Professional Documents
Culture Documents
Atm MGMT System
Atm MGMT System
TRUST PUBLIC
SENIOR SECONDARY SCHOOL (CBSE)-2022-2023
(Affiliated to the Central Board of Secondary Education, Delhi, Affi.No :
1930358)
NAME: GOBI
KRISHNAN.P MRS.JENETPRABA.C
RAGUL.T
NANDA KUMAR.K.M
ROLL NUMBER:
CERTIFICATE
Certified that the entries in this project file is the Bonafide work
of
Grade : XII
Roll Number :
Sign: 1.
2.
3.
INDEX
S. No TITLE PAGE NO
10. OUTPUT 30
11. CONCLUSION 35
12. BIBLIOGRAPHY 36
ATM MANAGEMENT
SYSTEM
USING PYTHON WITH
MYSQL
CONNECTIVITY
INTRODUCTION TO PYTHON
Python runs an interpreting system, meaning that code can beexecuted as soon as it is
written. This means Python runs on an interpreter thatprototyping can be very quick.
Python is a high-level programming language. Python is very easyto learn the language
as compared to other languages like C, Java script, Java, etc. It is very easy to code in python
language and anybody can learn python basics in a few hours or days. It is also a developer-
friendly language.
What is Python?
Python is a popular programming language. It was created by Guidovan Rossum, and
released in 1991.
It is used for:
web development (server-side),
software development,
mathematics,
system scripting
What can python do?
Python can be used on a server to create web applications.
Python can be used alongside software to create workflows.
Python can connect to database systems. It can also read and modify files.
7| PPython
a can be used to handle big data and perform complex mathematics.
g
Why python?
Python works on different platforms (Windows,Mac,
Linux, Raspberry Pi, etc).
Python has a simple syntax similar to the English language.
Python has syntax that allows developers to write programs with fewer linesthan some
other programming languages.
Python runs on an interpreter system, meaning that code can be executed assoon as it
is written. This means that prototyping can be very quick.
Python can be treated in a procedural way, an object-oriented way or afunctional way.
Need to know!!
The most recent major version of Python is Python 3, which we shall be using in this
tutorial. However, Python 2, although not being updated with anything other than security
updates, is still quite popular.
In this tutorial Python will be written in a text editor. It is possible to write Python in an
Integrated Development Environment, such as Thonny,Pycharm, Netbeans or Eclipse
which are particularly useful when managing larger collections of Python files.
Python was designed for readability, and has some similarities to the English language with
influence from mathematics.
Python uses new lines to complete a command, as opposed to other programming
languages which often use semicolons or parentheses.
Python relies on indentation, using whitespace, to define scope; such as thescope of
loops, functions and classes.
Python is commonly used for developing websites and software, task automation, data
analysis, and data visualization. Since it’s relatively easy to learn, Python has been adopted by
many non-programmers such as accountants and scientists, for a variety of everyday tasks, like
organizing finances. “Writing programs is a very creative and rewarding activity,” says University
of Michigan and Coursera instructor Charles R Severance in his book Python for Everybody
OVERVIEW OF THE PROJECT
2. While using this ATM MANAGEMENT SYSTEM, we can easily manage the users of
the atm who make use of the services through database and prevent unexpected maulfunction.
3. There are various operations performed in ATM. Some of those are used frequently.
or example, withdrawl of money, viewing statement of previous transactions etc.
4. This design is so simple that user won’t find it difficult to use & navigate.
This accurate data helps to provide high level security in transactions. Most ATM
management system is built around highly secure system and highly reliable and can help
prevent time theft and administrative costs stemming.
Software programs constantly evolve. A program used today may be obsolete within
several years. Being trained on today's software does not guarantee it will be used when you are
ready to go out into the field.
Mysql connector is used to create a connection with python and mysql . Here python
acts at the front end and mysql acts at the back end. Using python-mysql connector simplifies
the task instead of working directly in mysql directory. The module mysql.connector is used to
connect
python with mysql. When you design real-life applicative programs,you are bound to
encounter situations where you need to manipulate data stored in a database through an
application designed by you.
In order to connect to a dsatabase from within python, you need a library that provides
connectivity functionality. There are many different libraries available for python to
accomplish this. mysqlconnector belongs to one of those modules.
The purpose of the System Concept Development Phase is to: Determine the
1.feasibility and appropriateness of the alternatives.Identify system interfaces.
Identify basic functional and data requirements to satisfy thebusiness
need.
PLANNING PHASE:
This phase formally defines the detailed functional user requirements using high-
level requirements identified in the Initiation,System Concept, and Planning phases.
The purposes of this phase are to:
DESIGN PHASE:
The design phase involves converting the informational, functional, and network
requirements identified during the initiation and planning phases into unified design
specifications that developers use to script programs during the development phase.
Program designs are c constructed in various ways. Using a top-down approach, designers
first identify and link major program components and interfaces, then expand design layouts
as they identify and link smaller subsystems and connections. Using a bottom-upapproach,
designers first identify and link minor program components and interfaces, then expand
design layouts as they identify and link larger systemsand connections.
Contemporary design techniques often use prototyping tools that build mock-up
designs of items such as application screens, database layouts, and system architectures.
End users, designers, developers, database managers, and network administrators should
review and refine the prototyped designs in an iterative process until they agree on an
acceptable design. Audit, security, and quality assurance personnel should be involved in
the review and approval process. During this phase, the system is designed to satisfy the
functional requirements identified in the previous phase. Since problems in the design phase
could be very expensive to solve in the later stage of the software development, a variety of
elements are considered in the design to mitigate risk.
These include:
IMPLEMENTATION PHASE:
This phase is initiated after the system has been tested and accepted bythe user. In
this phase, the system is installed to support the intended business functions. System
performance is compared to performance objectives established during the planning phase.
Implementation includes user notification, user training, installation of hardware,
installation of software onto production computers, and integration of the system into daily
work processes. This phase continues until the system is operating in production in
accordance with the defined user requirements.
SOFTWARE AND HARDWAREREQUIREMENTS
HARDWARE REQUIREMENTS:
PROCESSOR : PENTIUM(ANY) OR
AMD ATHALON(3800+-
4200+ DUALCORE)
RAM : 512MB+
2. Python
Merits:
Error prevention during manual inputs is mostly eradicated through the program.
Demerits:
Systems with lower version of python doesn’t support the codes executed
in mysql.
Required more defined functions for each and every step to reduce margin
of errors
3. The solutions are given as a proposal. The suggestion is revised on user request
and optimal changes are made. This loop terminates as soon asthe user is gratified with the
proposal.
5. Error analysis in the program can be improved . ATM management requires a high level
of security and advanced diagnosis to prevent frequent troubles in the functions and manipulation process.
6. Feedback can be obtained from each and every user thus we could improve our project
more user-friendly and reliable.
SOURCE CODE
SOURCE CODE
from pydoc import
Helper import
mysql.connector
myConnnection =""
cursor=""
userName="
" password
="" cid=""
#MODULE TO CHECK MYSQL CONNECTIVITY
def MYSQLconnectionCheck
global
userName
global password
userName = input("\n ENTER MYSQL SERVER'S USERNAME :
")
myConnection=mysql.connector.connect(host="localhost",user=userName,passwd=pass
word ,
auth_plugin='mysql_native_password'
) if myConnection:
cursor.execute("COMMIT"
) cursor.close()
return
myConnection else:
def MYSQLconnection
(): global userName
global password
global
myConnection
myConnection=mysql.connector.connect(host="localhost",user=userName,passwd=pass
word ,database="ATM" , auth_plugin='mysql_native_password' )
if myConnection:
return
myConnection
else:
myConnection.close()
def
newCustomer():
global cid
if myConnection:
cursor=myConnection.cursor(
sql='INSERT INTO
CUSTOMER(cid,cname,address,phone) values(%s,%s,
%s,%s)'
values=(cid,cname,address,phone
) cursor.execute(sql,values)
cursor.execute("COMMIT")
cursor.close()
print("\nNew Customer Added Successfully !")
# MODULE TO DISPLAY CUSTOMER INFORMATION :
def displayAllCustomer():
if myConnection:
cursor=myConnection.cursor(
cursor.execute("SELECT * FROM
print("\n*****DETAILS OF ALL
CUSTOMER*****") print(data)
else:
else:
def
searchCustomer():
global cid
if myConnection:
cursor=myConnection.cursor()
cid=input("Please Enter Customer ID : ")
sql="SELECT * FROM CUSTOMER WHERE CID = %s"
values=(cid,)
data=cursor.execute(sql,values
) data=cursor.fetchall()
if data:
print("\n*****CUSTOMER
DETAILS*****") print(data)
else:
else:
def
newAccount():
global cid
if myConnection:
cursor=myConnection.cursor()
cid=input("Please Enter Customer ID : ")
sql="SELECT * FROM CUSTOMER WHERE CID = %s"
values=(cid,)
data=cursor.execute(sql,values
) data = cursor.fetchall()
if data:
cursor.execute(createTable)
values1=(cid,account_no,account_type,amount,ATM_pin
) cursor.execute(sql,values1)
cursor.execute("COMMIT")
else:
def
displayAllAccounts():
if myConnection:
cursor=myConnection.cursor()
cursor.execute("SELECT * FROM
) else:
print("Sorry ! No Account Information , Please Try Again ! ")
else:
def
searchAccount():
global cid
if myConnection:
cursor=myConnection.cursor(
)
cid=input("PLEASE ENTER CUSTOMER ID : ")
values=(cid,account_no)
data=cursor.execute(sql,values
) data = cursor.fetchall()
if data:
print("\n*****CUSTOMER ACCOUNT
DETAILS*****") print(data)
else:
else:
def
withdrawAmount():
count =3
if myConnection:
cursor=myConnection.cursor(
data=cursor.execute(sql,values
) data = cursor.fetchall()
if data:
while True:
values=(ATM_PIN,)
cursor.execute(sql,values
) data=cursor.fetchall()
if data:
cursor.execute(sql ,
(amount,))
cursor.execute("COMMIT")
print("******* TRANSACTION SUCCESSFULLY COMPLETED !
*******"
)
print("***** PLEASE TAKE ONEY AND REMOVE YOUR CARD !
*****")
break
else:
PIN") count=count-1
break
else:
if myConnection:
MYSQLconnection
() while(1)
print("! PLEASE ENTER 1 FOR NEW USER !")
")) if choice == 1:
newCustomer(
) elif choice == 2:
displayAllCustomer(
) elif choice == 3:
searchCustomer(
) elif choice == 4:
newAccount(
) elif
choice==5:
displayAllAccounts(
) elif choice==6:
searchAccount(
) elif choice==7:
withdrawAmount(
) elif choice==8:
break
elif
choice==0:
Helper()
else:
print("Sorry ,May Be You Are Giving Me Wrong Input, Please Try Again !!! ")
else:
1. NEW USER:
6.SEARCH AN ACCOUNT
7. TO WITHDRAW AMOUNT :
TABLES:
1. CUSTOMER
2. ACCOUNT
CONCLUSION
Similarly, it has helped us to achieve the new level of the imagination and have given
us the certainty to grow more projects and to improve our programming abilities and skills
as well as to improve our programming understanding level. After the consumation of the
coursework it was important to guarantee that it was bug and mistake free, such a significant
number of test were done which affirmed that the projects were prepared to use in the
genuine situation and can be refreshed if necessary in future.
From the overall coursework, it gives us a knowledge about not only python
programming language.
Hence indisputably, the coursework helped us to learn and get more information
about the python programming language. Moreover, it has helped us additionally in creating
distinctive different ability and educated numerous things which will help in our profession
life in future. This undertaking hasstill got spaces for the change. Atlast, We foresee
accomplishing more undertakings in coming future.
BIBLIOGRAPHY
WEBSITES :
1. www.tutorialaicsip.com/xii-practicals-ip/ip-project-class-12-python-2/
2. pythonclassroomdiary.files.wordpress.com/bharat-software-atm-manager.pdf
3. www.w3schools.com/sql/sql_update.asp
4. padhaaii.wordpress.com/class-12-cs-sumita-arora-python-pdf/
5. www.scribd.com/document/305482548/ATM-Management
BOOKS: