0% found this document useful (0 votes)
27 views

Computer Project Bank Part 2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views

Computer Project Bank Part 2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 23

INDEX

SNO. TITLE PAGE NO.

1 INTRODUCTION

2 AIM OF THE PROJECT

3 LIMITATIONS OF THE EXISTING SYSTEM

4 SYSTEM REQUIREMENTS

5 SOURCE CODE

6 SAMPLE INPUT/OUTPUT

7 CONCLUSION

8 BIBLIOGRAPHY
INTRODUCTION

Python is an easy to learn, powerful programming language. Python

programming language was developed by Guido Van Rossum in February 1991.

Python is based on or influenced with two programming languages: ABC language

and Modula-3. It has efficient high-level data structures and a simple but effective

approach to object-oriented programming. Python’s elegant syntax and dynamic

typing, together with its interpreted nature, make it an ideal language for scripting

and rapid application development in many areas on most platforms. The Python

interpreter is easily extended with new functions and data types implemented in C or

C++ (or other languages callable from C). Python is also suitable as an extension

language for customizable applications.

MySQL is an open-source relational database management system that works

on many platforms. It provides multi-user access to support many storage engines

and is backed by Oracle. SQL is the core of a relational database which is used for

accessing and managing the database. By using SQL, you can add, update or delete

rows of data, retrieve subsets of information, modify databases and perform many

actions.

This software is developed in the programming language Python in

association with MySQL i.e. available in the syllabus of CBSE Class XII for the

academic year 2024-2025.


The Bank Account Management System is an application for maintaining a

person's account in a bank. In this project I tried to show the working of a banking

account system and cover the basic functionality of a Bank Account Management

System. To develop a project for solving financial applications of a customer in

banking environment in order to nurture the needs of an end banking user by

providing various ways to perform banking tasks. Also to enable the user’s work

space to have additional functionalities which are not provided under a conventional

banking project. The Bank Account Management System undertaken as a project is

based on relevant technologies. The main aim of this project is to develop software

for Bank Account Management System. This project has been developed to carry

out the processes easily and quickly, which is not possible with the manuals systems,

which are overcome by this software. This project is developed using Python

language and MYSQL. Creating and managing requirements is a challenge of IT,

systems and product development projects or indeed for any activity where you have

to manage a contractual relationship. Organization need to effectively define and

manage requirements to ensure they are meeting needs of the customer, while

proving compliance and staying on the schedule and within budget. The impact of a

poorly expressed requirement can bring a business out of compliance or even cause

injury or death. Requirements definition and management is an activity that can

deliver a high, fast return on investment. The project analyzes the system

requirements and then comes up with the requirements specifications. It studies

other related systems and then come up with system specifications. The system is
then designed in accordance with specifications to satisfy the requirements. The

system design is then implemented with Python and MYSQL. The system is

designed as an interactive and content management system. The content

management system deals with data entry, validation, confirmation and updation

while the interactive system deals with system interaction with the administration

and users. Thus, above features of this project will save transaction time and

therefore increase the efficiency of the system.


AIM OF THE PROJECT

This project "BANK MANAGEMENT SYSTEM" 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. This project emphasises

the creation of new customer accounts and managing the existing account holders in

the bank by making digital system. At the same time one can generate daily reports,

monthly reports and annual reports which can enhance the smooth working of the

system.

This project is on how to perform Bank management effectively, fast and

easily. Management using pen and paper is absurd in the modern era. On the other

hand, a virtual Bank management system eliminates all these burdens. By using this

system, all reports can be generated quickly. Thus the project aims in creating a

good user-friendly Bank management system reducing human strain to a large

extent.
LIMITATIONS OF THE EXISTING SYSTEM

File lost

When computerized system is not implemented file is always lost because of

human environment. Sometimes due to some human error there may be a loss of

records.

File damaged

When a computerized system is not there file is always lost due to some

accident like spilling of water by some member on file accidentally, besides some

natural disaster like floods or fires may also damage the files.

When there is no computerized system there is always a difficulty in searching

of records if the records are large in number.

Space consuming

After the number of records becomes large the space for physical storage of

file and records also increases if no computerized system is implemented.

Cost consuming

As there is no computerized system, to add each record paper will be needed

which will increase the cost for the management of library.


SYSTEM REQUIREMENTS

HARDWARE REQUIREMENTS

 x86 64-bit CPU (Intel / AMD architecture)


 4 GB RAM.
 5 GB free disk space.

SOFTWARE REQUIREMENTS

Operating System: Windows 98, 2000, XP, 7, 8, 8.1, 10 Tools: Python 3.5, Mysql
SOURCE CODE

MODULE : Main_bank.py
import mysql.connector as sql

conn=sql.connect(user='root', passwd='Smic123@',host='localhost',database='bank')

cur = conn.cursor()

#cur.execute('create table user_table(username varchar(25) primary key,passwrd varchar(25) not


null )')

print('=========================WELCOME TO BANK OF INDIA


=============================')

import datetime as dt

print(dt.datetime.now())

print()

print()

print('1.REGISTER')

print()

print('2.LOGIN')

print()

n=int(input('enter your choice='))

print()

if n== 1:

name=input('Enter a Username=')

print()

passwd=int(input('Enter a 4 DIGIT Password='))

print()
V_SQLInsert="INSERT INTO user_table (passwrd,username) values (" + str (passwd) + ",' "
+ name + " ') "

cur.execute(V_SQLInsert)

conn.commit()

print()

print('USER created succesfully')

import menu

if n==2 :

name=input('Enter your Username=')

print()

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)

if cur.fetchone() is None:

print()

print('Invalid username or password')

else:

print()

import menu
MODULE : Menu.py
import datetime as dt

import mysql.connector as sql

conn=sql.connect(user='root', passwd='Smic123\"',host='localhost',database='bank')

cur = conn.cursor()

conn.autocommit = True

c = 'y'

while c == 'y':

print()

print('1.CREATE BANK ACCOUNT')

print()

print('2.TRANSACTION')

print()

print('3.CUSTOMER DETAILS')

print()

print('4.TRANSACTION DETAILS')

print()

print('5.DELETE ACCOUNT')

print()

print('6.QUIT')

print()

n=int(input('Enter your CHOICE='))

print()

if n == 1:

acc_no=int(input('Enter your ACCOUNT NUMBER='))

print()
acc_name=input('Enter your ACCOUNT NAME=')

print()

ph_no=int(input('Enter your PHONE NUMBER='))

print()

add=(input('Enter your place='))

print()

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()

print('Account Created Succesfully!!!!!')

conn.commit()

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()

print('Account Number Invalid Sorry Try Again Later')

print()

else:

print()

print('1.WITHDRAW AMOUNT')

print()
print('2.ADD AMOUNT')

print()

print()

x=int(input('Enter your CHOICE='))

print()

if x == 1:

amt=int(input('Enter withdrawl amount='))

cr_amt=0

cur.execute('update customer_details set cr_amt=cr_amt-'+str(amt) + '


where acct_no=' +str(acct_no) )

V_SQLInsert="INSERT INTO transactions values ({} , '{}' , {} , {})


".format(acct_no,dt.datetime.today(),amt,cr_amt)

cur.execute(V_SQLInsert)

conn.commit()

print()

print('Account Updated Succesfully!!!!!')

if x== 2:

amt=int(input('Enter amount to be added='))

cr_amt=0

cur.execute('update customer_details set cr_amt=cr_amt+'+str(amt) + '


where acct_no=' +str(acct_no) )

V_SQLInsert="INSERT INTO transactions values ({} , '{}' , {} , {})


".format(acct_no,dt.datetime.today(),cr_amt,amt)

cur.execute(V_SQLInsert)

conn.commit()

print()

print('Account Updated Succesfully!!!!!')


if n == 3:

acct_no=int(input('Enter your account number='))

print()

cur.execute('select * from customer_details where acct_no='+str(acct_no) )

if cur.fetchone() is None:

print()

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()

print('ACCOUNT NAME=',row[1])

print()

print('PHONE NUMBER=',row[2])

print()

print('ADDRESS=',row[3])

print()

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) )

if cur.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)

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:

c='n'

else:

print('THANK YOU PLEASE VISIT AGAIN')


DATABASE & TABLE DETAILS

import mysql.connector as sql

conn=sql.connect(user='root', passwd='Smic123@',host='localhost',database='bank')

if conn.is_connected():

print('connected succesfully')

cur = conn.cursor()

cur.execute('create table customer_details(acct_no int primary key,acct_name varchar(25)


,phone_no bigint(25) check(phone_no>11),address varchar(25),cr_amt float )')

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

import mysql.connector as sql

conn=sql.connect(user='root', passwd='Smic123@',host='localhost',database='bank')

cur = conn.cursor()

cur.execute('create table transactions(acct_no int(11),date date ,withdrawal_amt


bigint(20),amount_added bigint(20) )')

print('transaction table successfully created')

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

import mysql.connector as sql

conn=sql.connect(user='root', passwd='Smic123@',host='localhost',database='bank')

cur = conn.cursor()

cur.execute('create table user_table(username varchar(25) primary key,passwrd varchar(25) not


null )')

print('user table successfully created')


SAMPLE INPUT/OUTPT
===============WELCOME TO BANK OF INDIA =============================

2022-10-27 09:32:03.612826

1.REGISTER

2.LOGIN

enter your choice=1

Enter a Username=aniletw

Enter a 4 DIGIT Password=2022

USER created successfully

1.REGISTER

2.LOGIN

enter your choice=2

Enter your Username=aniletw

Enter your 4 DIGIT Password=2022

1.CREATE BANK ACCOUNT

2.TRANSACTION

3.CUSTOMER DETAILS

4.TRANSACTION DETAILS

5.DELETE ACCOUNT

6.QUIT
Enter your CHOICE=1

Enter your ACCOUNT NUMBER=1111

Enter your ACCOUNT NAME=ANKIT SHARMA

Enter your PHONE NUMBER=8877665533

Enter your place=ETAWAH

Enter your credit amount=12000

Account Created Succesfully!!!!!

1.CREATE BANK ACCOUNT

2.TRANSACTION

3.CUSTOMER DETAILS

4.TRANSACTION DETAILS

5.DELETE ACCOUNT

6.QUIT

Enter your CHOICE=2

Enter Your Account Number=1111

1.WITHDRAW AMOUNT

2.ADD AMOUNT

Enter your CHOICE=2

Enter amount to be added=500

Account Updated Succesfully!!!!!


1.CREATE BANK ACCOUNT

2.TRANSACTION

3.CUSTOMER DETAILS

4.TRANSACTION DETAILS

5.DELETE ACCOUNT

6.QUIT

Enter your CHOICE=2

Enter Your Account Number=1111

1.WITHDRAW AMOUNT

2.ADD AMOUNT

Enter your CHOICE=1

Enter withdrawl amount=200

Account Updated Succesfully!!!!!

1.CREATE BANK ACCOUNT

2.TRANSACTION

3.CUSTOMER DETAILS

4.TRANSACTION DETAILS

5.DELETE ACCOUNT

6.QUIT

Enter your CHOICE=3

Enter your account number=1111

ACCOUNT NO= 1111


ACCOUNT NAME= ANKIT SHARMA

PHONE NUMBER= 8877665533

ADDRESS= ETAWAH

cr_amt= 12300.0

1.CREATE BANK ACCOUNT

2.TRANSACTION

3.CUSTOMER DETAILS

4.TRANSACTION DETAILS

5.DELETE ACCOUNT

6.QUIT

Enter your CHOICE=4

Enter your account number=1111

ACCOUNT NO= 1111

DATE= 2022-10-27

WITHDRAWAL AMOUNT= 0

AMOUNT ADDED= 500

ACCOUNT NO= 1111

DATE= 2022-10-27

WITHDRAWAL AMOUNT= 200

AMOUNT ADDED= 0

1.CREATE BANK ACCOUNT

2.TRANSACTION

3.CUSTOMER DETAILS
4.TRANSACTION DETAILS

5.DELETE ACCOUNT

6.QUIT

Enter your CHOICE=5

DELETE YOUR ACCOUNT

Enter your account number=1111


ACCOUNT DELETED SUCCESFULLY

1.CREATE BANK ACCOUNT

2.TRANSACTION

3.CUSTOMER DETAILS

4.TRANSACTION DETAILS

5.DELETE ACCOUNT

6.QUIT

Enter your CHOICE=6

THANK YOU PLEASE VISIT AGAIN


CONCLUSION

After we have completed the project we are sure the problems in the existing system

would overcome. The “BANK MANAGEMENT SYSTEM” process made

computerized to reduce human errors and to increase the efficiency. The main focus

of this project is to reduce Human efforts. The maintenance of the records is made

efficient, as all the records are stored in the data file, through which data can be

retrieved easily. The navigation control is provided in all the forms to navigate

through the large amount of records. If the numbers of records are very large then

user has to just type in the search string and user gets the results immediately. The

Account holders are given a particular unique id no, so that they can be accessed

correctly and without errors. Our main aim of the project is to get the correct

information about a particular Account holder available in the bank. The problems,

which existed in the earlier system, have been removed to a large extent. And it is

expected that this project will go a long way in satisfying user’s requirements. The

computerization of the Bank Management System will not only improves the

efficiency but will also reduce human stress thereby indirectly improving human

recourses.
BIBLIOGRAPHY

Websites:

https://www.analyticsvidhya.com/blog/2021/07/3-interesting-python-projects-with-

code-for-beginners/

https://realpython.com/tutorials/projects/

Books:

Sumita Arora (Class XII) Textbook

Sumita Arora (Class XI) Textbook

You might also like