M.D.
DAYANAND MODEL SCHOOL, NAKODAR
ACADEMIC YEAR : 2020-21
PROJECT REPORT ON
BANK MANAGEMENT SYSTEM
ROLL NO :
NAME : Gurjit Singh Pandher
CLASS : XII
SUBJECT : Informatics Practices
SUB CODE : 065
PROJECT GUIDE: Mrs. RESHMA PAMA
PGT (IP)
M.D. DAYANAND MODEL SCHOOL, NAKODAR
JALANDHAR DIST
PUNJAB
1
M.D. DAYANAND MODEL SCHOOL, NAKODAR
CERTIFICATE
This is to certify that Cadet GURJIT SINGH PANDHER CBSE Roll No: __________
has successfully completed the project Work entitled "BANK MANAGEMENT
SYSTEM." in the subject INFORMATICS PRACTICES(065) laid down in the
regulations of CBSE for the purpose of Practical Examination in Class XII to be
held in M.D. DAYANAND MODEL SCHOOL, NAKODAR on______________.
(RESHMA PAMA)
PGT IP
Master IC
Examiner:
Name: _______________
Signature:
Date:
2
ACKNOWLEDGEMENT
Apart from the efforts of me, the success of any project depends largely on the
encouragement and guidelines of many others. I take this opportunity to express my
gratitude to the people who have been instrumental in the successful completion of this
project.
I express deep sense of gratitude to almighty God for giving me strength for the
successful completion of the project.
I express my heartfelt gratitude to my parents for constant encouragement while
carrying out this project.
I gratefully acknowledge the contribution of the individuals who contributed in
bringing this project up to this level, who continues to look after me despite my flaws,
I express my deep sense of gratitude to the luminary The Principal, Mr.
BALJINDER SINGH PAMA, M.D. DAYANAND MODEL SCHOOL, NAKODAR who
has been continuously motivating and extending their helping hand to us.
My sincere thanks to Mrs. RESHMA PAMA, Master In-charge, A guide, Mentor
all the above a friend, who critically reviewed my project and helped in solving each and
every problem, occurred during implementation of the project
The guidance and support received from all the members who contributed and
who are contributing to this project, was vital for the success of the project. I am grateful
for their constant support and help.
3
INTRODUCTION
"BANK MANAGEMENT SYSTEM" This project is useful for the bank employees
as well as customers to keep a track of account details. The emerging of digital system
made information available on finger tips. By automating the transactions one can view
the details as and when required in no time. This project emphases on creation of new
customer accounts, managing the existing account holders in the bank, by making
digital system one can generate daily reports, monthly reports and annual reports which
can enhance the system.
OBJECTIVES OF THE PROJECT
The objective of this project is to let the students apply the programming
knowledge into a real- world situation/problem and exposed the students how
programming skills helps in developing a good software.
1. Write programs utilizing modern software tools.
2. Apply object oriented programming principles effectively when developing small
to medium sized projects.
3. Write effective procedural code to solve small to medium sized problems.
4. Students will demonstrate a breadth of knowledge in computer science, as
exemplified in the areas of systems, theory and software development.
5. Students will demonstrate ability to conduct a research or applied Computer
Science project, requiring writing and presentation skills which exemplify
scholarly style in computer science.
4
PROPOSED SYSTEM
Today one cannot afford to rely on the fallible human beings of be really wants to
stand against today’s merciless competition where not to wise saying “to err is
human” no longer valid, it’s outdated to rationalize your mistake. So, to keep pace with
time, to bring about the best result without malfunctioning and greater efficiency so to
replace the unending heaps of flies with a muchsophisticated hard disk of the computer.
One has to use the data management software. Software has been an ascent in
atomizationvarious organisations. Many software products working are now in markets,
which have helped in making the organizations work easier and efficiently. Data
management initially hadto maintain a lot of ledgers and a lot of paperwork has to be
done but now software producton this organization has made their work fasterand
easier. Now only this software has to beloaded on the computer and work can be done.
This prevents a lot of time and money. Thework becomes fully automated and
any information regarding the organization can beobtained by clicking the button.
Moreover, nowit’s an age of computers of and automatingsuch an organization gives
the better look.
5
The purpose of this phase is to:
Operate, maintain, and enhance the system.
Certify that the system can process sensitive information.
Conduct periodic assessments of the system to ensure the functional
requirements continue to be satisfied.
Determine when the system needs to be modernized, replaced, or retired.
FLOW CHART
1.REGISTER
2.LOGIN
IF N=1
IF N =2
PROGRAM INSERTS
PROGRAM FETCHES
DATA IN THE
DATA FROM DATABASE
DATABASE
MENU IS DISPLAYED
1.CREATE BANK ACCOUNT
2.TRANSACTION
3.CUSTOMER DETAILS
6
4.TRANSACTION DETAILS
5.DELETE ACCOUNT
6.QUIT
IF N= 3/4 IF N= 1/2/5/6
DATA IS FETCHED FROM THE DATA IS INSERTED IN THE
DATABASE DATABASE
Source code
TABLE.PY
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',passwd='m
anager’
database='bank')
ifconn.is_connected():
print('connected succesfully')
cur = conn.cursor()
cur.execute('create table customer_details(acct_noint
primary key,acct_namevarchar(25) ,phone_nobigint(25)
check(phone_no>11),address varchar(25),cr_amt float )')
7
MENU.PY
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',passwd='m
anager',
database='bank')
cur = conn.cursor()
conn.autocommit = True
print('1.CREATE BANK ACCOUNT')
print('2.TRANSACTION')
print('3.CUSTOMER DETAILS')
print(‘4.TRANSACTION DETAILS’)
print('5.DELETE DETAILS')
print('6.QUIT')
n=int(input('Enter your CHOICE='))
if n == 1:
acc_no=int(input('Enter your ACCOUNT NUMBER='))
acc_name=input('Enter your ACCOUNT NAME=')
ph_no=int(input('Enter your PHONE NUMBER='))
add=(input('Enter your place='))
cr_amt=int(input('Enter your credit amount='))
V_SQLInsert="INSERT INTO customer_details values (" +
str (acc_no) + ",' " + acc_name + " ',"+str(ph_no) +
",' " +add + " ',"+ str (cr_amt) + " ) "
cur.execute(V_SQLInsert)
print('Account Created Succesfully!!!!!')
conn.commit()
8
if n == 2:
acct_no=int(input('Enter Your Account Number='))
cur.execute('select * from customer_details where
acct_no='+str (acct_no) )
data=cur.fetchall()
count=cur.rowcount
conn.commit()
if count == 0:
print('Account Number Invalid Sorry Try Again
Later’)
else:
print('1.WITHDRAW AMOUNT')
print('2.ADD AMOUNT')
x=int(input('Enter your CHOICE='))
if x == 1:
amt=int(input('Enter withdrawl amount='))
cur.execute('update customer_details set
cr_amt=cr_amt-'+str(amt) + ' where acct_no='
+str(acct_no) )
conn.commit()
print('Account Updated Succesfully!!!!!')
if x== 2:
amt=int(input('Enter amount to be added='))
cur.execute('update customer_details set
cr_amt=cr_amt+'+str(amt) + ' where acct_no='
+str(acct_no) )
conn.commit()
print('Account Updated Succesfully!!!!!')
9
if n == 3:
acct_no=int(input('Enter your account number=')
cur.execute('select * from customer_details where
acct_no='+str(acct_no) )
ifcur.fetchone() is None:
print('Invalid Account number')
else:
cur.execute('select * from customer_details where
acct_no='+str(acct_no) )
data=cur.fetchall()
for row in data:
print('ACCOUNT NO=',acct_no)
print('ACCOUNT NAME=',row[1])
print(' PHONE NUMBER=',row[2])
print('ADDRESS=',row[3])
print('cr_amt=',row[4])
if n== 4:
acct_no=int(input('Enter your account number='))
print()
cur.execute('select * from customer_details
where acct_no='+str(acct_no) )
ifcur.fetchone() is None:
print()
print('Invalid Account number')
else:
cur.execute('select * from transactions where
acct_no='+str(acct_no) )
data=cur.fetchall()
for row in data:
print('ACCOUNT NO=',acct_no)
10
print()
print('DATE=',row[1])
print()
print(' WITHDRAWAL AMOUNT=',row[2])
print()
print('AMOUNT ADDED=',row[3])
print()
if n == 5:
print('DELETE YOUR ACCOUNT')
acct_no=int(input('Enter your account number='))
cur.execute('delete from customer_details where
acct_no='+str(acct_no) )
print('ACCOUNT DELETED SUCCESFULLY')
if n == 6:
quit()
MAIN.PY
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',passwd='m
anager'
database='bank')
cur = conn.cursor()
#cur.execute('create table user_table(username
varchar(25) primarykey,passwrdvarchar(25) not null )')
print('1.REGISTER')
print('2.LOGIN')
n=int(input('enter your choice='))
11
if n== 1:
name=input('Enter a Username=')
passwd=int(input('Enter a 4 DIGIT Password='))
V_SQLInsert="INSERT INTOuser_table (passwrd,username)
values (" + str (passwd) + ",' " + name + " ') "
cur.execute(V_SQLInsert)
conn.commit()
print('USER created succesfully')
if n==2 :
name=input('Enter your Username=')
passwd=int(input('Enter your 4 DIGIT Password='))
V_Sql_Sel="select * from user_table where
passwrd='"+str (passwd)+"' and username= ' " +name+ "
' "
cur.execute(V_Sql_Sel)
ifcur.fetchone() is None:
print('Invalid username or password')
else:
import main
12
OUTPUT
MAIN PAGE
13
MENU PAGE
14
-
CREATE BANK ACCOUNT
15
CUSTOMER DETAILS
16
TRANSCATION
17
TRANSACTION DETAILS
18
HARDWARE AND SOFTWARE REQUIREMENTS
19
I.OPERATING SYSTEM : WINDOWS 7 AND ABOVE
II. PROCESSOR : PENTIUM(ANY) OR AMD
ATHALON(3800+- 4200+ DUALCORE)
III. MOTHERBOARD : 1.845 OR 915,995 FOR PENTIUM 0R MSI
K9MM-V VIAK8M800+8237R PLUS CHIPSET
FOR AMD ATHALON
IV. RAM : 512MB+
V. Hard disk : SATA 40 GB OR ABOVE
VI. CD/DVD r/w multi drive combo: (If back up required)
VII. FLOPPY DRIVE 1.44 MB : (If Backup required)
VIII. MONITOR 14.1 or 15 -17 inch
IX. Key board and mouse
X. Printer : (if print is required – [Hard copy])
SOFTWARE REQUIREMENTS:
I. Windows OS
II. Python
BIBLIOGRAPHY
20
1. Computer science With Python - Class XI By : SumitaArora
2. A Project Report On Blood Bank Management System (BBMS)
By : Praveen M Jigajinni
3. Website: https://www.w3resource.com
4. https://en.wikipedia.org/wiki/E_(mathematical_constant)
***
21