0% found this document useful (0 votes)
15 views18 pages

Bank Management

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)
15 views18 pages

Bank Management

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/ 18

Background of Project

The bank management system project is a program that is built to facilitate the
essential functions that a bank performs. It is designed to simplify the day to day
chores of a banking system. This program puts emphasis on resolving customer's
financial applications in a banking environment to meet the needs of a bank user.
Python programming and MySQL database have been used to make this system.

It allows the creation of a new account, depositing and withdrawing of money and
viewing account details by the customers at their home. As it is customer oriented,
it doesn't contain admin functions. This project has been developed to carry out the
processes easily and quickly, which is not possible with the manuals systems. This
limitation is not present in this system as all the transactions are automated. By
automating the transactions one can view the transaction and account details as and
when required in no time. This creates a faster and efficient system.

Thousands of bank performs millions of transactions every day and thousands of


users use banking system in their everyday life. Even though banking is an integral
part of many peoples life it is unfeasible for many, so this project hopes to make
the complex banking processes user friendly and accessible to everyone.

1
Functions And Modules

1. MySql connectionCheck():

It is used to check MySql connectivity.

2. MySql connection():

It is used to establish MySql connection.

Modules:

1. Import mysql.connector:

This module helps python programs access the MySql databases

2
Flow of project

This project is based on Bank Management system. A user can perform the
following four operations in this project:
1. Creating a bank account:
A user can open a new bank account by selecting option I and entering a unique
account number, name, city they live in and their contact number i.e phone number.

2. Depositing money:

A user can deposit money in the bank management system by selecting option 2
and entering their account number, the amount they want to deposit and date of the
transaction.

3. Withdrawing money:

The user can also withdraw their money from the bank management system by
selecting option 3 and entering their account number, the amount they want to
withdraw and the date of the transaction.

4. Viewing account details:


The user of the bank management system can view their account details such their
balance amount and other details by selecting option 4 and entering their account
number.
Lastly, the customers can exit the system by selecting option number 5
based applications, including Facebook, Twitter and YouTube.

3
My Sql

MySQL is an Oracle-backed open source relational database management system


(RDBMS) based on Structured Query Language (SQL). MySQL runs on virtually
all platforms, including Linux, UNIX and Windows. Although it can be used in a
wide range of applications, MySQL is most often associated with web applications
and online publishing.

MySQL is an important component of an open source enterprise stack called


LAMP. LAMP is a web development platform that uses Linux as the operating
system, Apache as the web server, MySQL as the relational database management
system and PHP as the object-oriented scripting language. (Sometimes Perl or
Python is used instead of PHP.)

Originally conceived by the Swedish company MySQL AB, MySQL was acquired
by Sun Microsystems in 2008 and then by Oracle when it bought Sun in 2010.
Developers can use MySQL under the GNU General Public License (GPL), but
enterprises must obtain a commercial license from Oracle.

Today, MySQL is the RDBMS behind many of the top websites in the world and
countless corporate and consumer- facing web-

4
Some basic information about MySQL is as follows:

Current Developer-Oracle Corporation

Original Developer-MySQL AB (Then, briefly, Sun Microsystems)

Current Stable Release-8.0.16 (on April 25, 2019)

Original Release-May 23, 1995

License-GPLv2 (or proprietary)

Primary language-C and C++

Website-https://www.mysql.com/

Open-source repository-https://github.com/mysql/mysql-server

5
Python

Python is a popular programming language. It was created by Guido van Rossum,


and released in 1991. It is used for web development (server-side), software
development, mathematics and system scripting. Python can be used on a server to
create web applications, create workflows, connect to database systems. It can also
read and modify files. Python can be used to handle big data and perform complex
mathematics and for rapid prototyping, or for production- ready software
development.

Python works on different platforms (Windows, Mac, Linux, Raspberry Pi, etc. It
has a simple syntax similar to the English language. Python has syntax that allows
developers to write programs with fewer lines than some other programming
languages which runs on an interpreter system, meaning that code can be executed
as soon 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 a functional way.

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 the scope of loops, functions and
classes. Other programming languages often use curly-brackets for this purpose.

6
Windows terminal

The terminal is a multi-tabbed terminal emulator that Microsoft has developed for
Windows 10 and later as a replacement for Windows Console. Until February 2022
it was called Windows Terminal. It can run any command-line app, including all
Windows terminal emulators, in a separate tab. It is preconfigured to run
Command Prompt, PowerShell, WSL, SSH, and Azure Cloud Shell Connector.
Windows Terminal comes with its own rendering back- end; starting with version
1.11 on Windows 11, command-line apps can run using this newer back-end
instead of the old Windows Console.

Terminal is a command-line front-end. It can run multiple command- line apps,


including text-based shells in a multi- tabbed window. It has out-of-the-box
support for Command Prompt, PowerShell, and Bash on Windows Subsystem
Linux (WSL). It can natively connect to Azure Cloud Shell.

7
Hardware and Software requirenment

System:

Operating System: Windows 10 home 64 bit

Version: 10.0.19042 Build 19042

Language: English

System Manufacturer: Dell Inc.

BIOS Date: 7/27/2021

Processor: Intel(R) Core(TM) i5-1035G+ CPU

Memory: 8.00 GB RAM

SMBIOS Version: 3.1

8
Source Code

print("**Bank Transaction**")
import mysql.connector
con = mysql.connector.connect(host="localhost", user="root", password="1234")
mycursor = con.cursor()

# Create database if it doesn't exist


mycursor.execute("CREATE DATABASE IF NOT EXISTS Banksys")
mycursor.execute("USE Banksys")

# Creating required tables


mycursor.execute("""
CREATE TABLE IF NOT EXISTS bankaccount (
AccountHolder_name VARCHAR(50) NOT NULL,
AH_Id varchar(25) NOT NULL,
Date date(25),
balance int(10)
)
""")

mycursor.execute("""
CREATE TABLE IF NOT EXISTS bank_trans (
Acno VARCHAR(50) NOT NULL,
Amount CHAR(1),

9
dot VARCHAR(25) NOT NULL,
total_balance VARCHAR(25)
)
""")
con.commit()

while True:
print("1.=Create Account")
print("2.=Deposit Money")
print("1.=Withdraw Money")
print("1.=Display Account")

if ch==1:
print("All information prompted are mandatory to be filled")

acno=str(input("Enter account number:"))

name=input("Enter name(limit 35 characters):")


city=str(input("Enter city name:"))
mn=str(input("Enter mobile no.:"))

balance-0

mycursor.execute("insert into bank_master


values('"+acno+","+name+","+citx+","+mn+","+str(balance)+")")
10
mydb.commit()

print("Account is successfully created!!!")

#PROCEDURE FOR UPDATIONG DETAILS AFTER THE DEPOSITION OF


MONEY BY THE APPLICANT

elif(ch-2):

acno=str(input("Enter account number:"))

dp=int(input("Enter amount to be deposited."))

dot-str(input("Enter date of Transaction: YYYY-MM-DD"))

ttype="d"

mycursor.execute("insert into banktrans values('"+acno+" "+str(dp)+" "+dot+"


"+ttype+")")

mycursor.execute("update bank master set balance-balance+'"+str(dp)+"' where


acno='"+acno+")

mydb.commit()

11
print("money has been deposited successully!!!")

#PROCEDURE FODRADA DIG THE DETAILS OF ACCOUNT AFTER THE


WITHDRAWL OF MONEY BY THE APPLICANT

elif(ch-3):

acno=str(input("Enter account number:"))

wd=int(input("Enter amount to be withdrawn:"))

dot=str(input("enter date of transaction: YYYY-MM-DD"))

ttype="w"

mycursor.execute("insert into banktrans


values('"+acno+"','"+str(wd)+"','"+dot+'"','"+ttype+"")")
mycursor.execute("update bank_master set balance-balance- ""+str(wd)+"' where
acno=""+acno+""")

mydb.commit()

#PROCEDURE FOR DISPLAYING THE ACCOUNT OF THE ACCOUNT


HOLDER AFTER HE/SHE ENTERS HIS/HER ACCOUNT NUMBER

12
elif(ch==4):

acno=str(input("Enter account number:" ))

mycursor.execute("select * from bank master where acno='"+acno+""")

for i in mycursor:

print(i)

else:

break

13
Output

Tables created:

14
Python Output:

15
16
Future enhancement

This project has a lot scope for future developments as bank management systems
are widely used everywhere. This program is also quite flexible in terms of
expansion and modification. Since this project is customer oriented, an admin
oriented module can be added.

Also, a loan function can be added which automatically mentions the total
repayable amount including interest and the date of repayment. One major
limitation of this project is that the account number of the customers have to be
filled in by themselves, this limitation can be overcome by using an auto
generation function for account numbers.

17
Bibliography

CBSE Computer Science Textbook for Class 12.


“Programming with Python” by Sumita Arora.

www.tutorialspoint.com
www.w3schools.com
www.geeksforgeeks.org

18

You might also like