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

CS Project

Uploaded by

shubham sagar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
97 views

CS Project

Uploaded by

shubham sagar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

Computer Science

(Code-083)
Project: Automated Banking
Software

Name: Shubham Sagar


Class: XII - A
Submitted to: Ms. Manisha

Sarvottam International School


1
Automated Banking Software
INDEX

S. No. Topic Page No.

1 Certificate 3

2 Acknowledgement 4

3 Aim & Problem Definition, Front-End, Back-End, Operating System 5

4 Hardware/Software Configuration Required 6

5 Introduction to Project and Flowchart 7-9

6 Overview of Python 3.7.3 10-12

7 Overview of MySQL 5.1 13-14

8 Database 15

9 Source Code & Output 16-34

10 Bibliography 35

Sarvottam International School


2
Certificate

This is to certify that Shubham Sagar of class XII-A has


completed Computer Science (083) Project under my
supervision and guidance as per the latest curriculum of
Central Board of Secondary Education (2022-2023).

___________________________ ___________________________

Examiner’s Signature Principal

___________________________

Teacher In-charge Institution Rubber Stamp

Date: _______________

Sarvottam International School


3
Acknowledgement

In the accomplishment of this project successfully, many people


have best owned upon me their blessings and the heart pledged
support, this time I am utilizing to thank all the people who
have been concerned with this project. Primarily I would thank
God for being able to complete project with success. Then I
would like to thank my Principal Dr. Priyanka Mehta and Ms.
Manisha, whose valuable guidance has been the ones that
helped me prepare this project and make it a success. Their
suggestions and instructions have served as the major
contributor towards the completion of the file. Then I would like
to thank my parents and friends who have helped me with their
valuable suggestions and guidance has been very helpful in
various phases. Last but not the least I would like to thank my
classmates who have helped me a lot.

Sarvottam International School


4
Aim:
To create an Automated Banking interface with python.

Front End Used:


Python 5.0.0

Back End Used:


MySQL Server 5.1

Operating System Used:


Microsoft Windows 10

Note: Other front-end, back-end & operating systems can also be used. These are the
ones used in my project.

Sarvottam International School


5
Hardware & Software Requirements

Hardware Requirements
Laptop/CPU with Intel i3/i5/i7, 512MB – 8GB RAM, 5MB – 2GB
Free Disk Space.

Software Requirements
Microsoft Windows 7 – 11, Python with all required libraries
installed, MySQL, any web browser for collection of data [ex-
Chrome]

Free Open Software Being Used:


 Python 3.7.3
 MySQL Server 5.1

MySQL is free and open-source software under the terms of


the GNU General Public License, and is also available under a
variety of proprietary licenses. MySQL was owned and
sponsored by the Swedish company MySQL AB, which was
bought by Sun Microsystems (now Oracle Corporation).

Sarvottam International School


6
PROJECT ON AUTOMATED BANKING SOFTWARE

INTRODUCTION
In this fast-paced world, technological developments are a crucial
for the society. It has changed the way in which we deal with
things in our day to day lives.

Most of the products and services banking and financial


institutions offer involve or have benefited from automation.
Banking automation technologies have drastically shortened
response times while increasing the value of each work hour.
Automation of many sectors like banking has broadened the
limitations which we a major challenge not so long ago. This
advancement has let increase the scalability of things on drastic
levels.

Not only that but, Automation of Banking has also made it much
more secure, safe and reliable for people than before. It has
increased the accessibility of services availed by the people and
made the functioning much smoother and error free.

In this project we have tried to take a leap into the concept of


Automated Banking and have come up with our own version of
AUTOMATED BANKING SOFTWARE which performs the basic
functions of an internet banking interface.

Sarvottam International School


7
OBJECTIVES OF THE PROJECT

The AUTOMATED BANKING SOFTWARE is similar to an

internet banking interface. It allows the user to carry out basic

functions in a banking interface.

• It is menu driven program which provides the options to the


user to perform the following operations:

o Create account
o Deposit money
o Withdraw money
o Transfer money
o Check balance
o Change pin

• Displays appropriate messages to guide the user.

• Perform appropriate operations according to the user’s


choice.

Sarvottam International School


8
FLOW CHART

START

Connection with database is established.

Database Created

1. To create account
2. To login
3. Exit

Account is created Exit the software


Login into the account with
account number and PIN

1. Deposit Money
2. Withdraw money
3. Transfer money
4. Check balance
5. Change PIN

EXIT THE
PROGRAM

Sarvottam International School


9
Overview of Python

Python is a high-level, interpreted, interactive and object-


oriented scripting language. Python is designed to be highly
readable. It uses English keywords frequently whereas other
languages use punctuation, and it has fewer syntactical
constructions than other languages.
 Python is Interpreted – Python is processed at runtime by
the interpreter. You do need to compile your program
before executing it. This is like PERL and PHP.
 Python is Object-Oriented – Python supports Object-
Oriented style or technique of programming that
encapsulates code within objects.
 Python is Interactive – You can sit at a Python prompt and
interact with the interpreter directly to write your
programs.
 Python is a Beginner’s Language – Python is a great
language for the beginner-level programmers and supports
the development of a wide range of applications from
simple text process to WWW browsers to games. A prime
example is a game called ‘Battlefield 2’ which uses Python
for all its add-ons and a lot of its functionality.

Sarvottam International School


10
History of Python
Python was developed by Guido van Rossum in the late eighties
and early nineties at the National Research Institute for
Mathematics and Computer Science in the Netherlands.
Python is derived from many other languages, including ABC,
Modula-3, C, C++, Algol-68, SmallTalk and Unix shell and other
scripting languages.
Python is copyrighted. Like PERL, Python source code is now
available under the GNU General Public License (GPL).
Python is now maintained by a core development team at the
institute, although Guido van Rossum still holds a vital role in
directing its progress.

Features of Python
Python’s features include –
 Easy-to-learn – Python has few keywords, simple structure,
and a clearly defined syntax. This allows the student to pick
up the language quickly and clearly.
 Easy-to-read – Python code is more clearly defined and
visible to the eyes.
 Easy-to-maintain – Python’s source code is fairly easy-to-
maintain.
 A Broad Standard Library – Python’s bulk of the library is
very portable and cross-platform compatible on UNIX,
Windows, and Macintosh.

Sarvottam International School


11
 Interactive Mode – Python has support for an interactive
mode which allows interactive testing and debugging of
snippets of code
 Portable – Python can run on a wide variety of hardware
platforms and has the same interface on all platforms.
 Extendable – You can add low-level modules to the Python
interpreter. These modules enable programmers to add to
or customize their tools to be more efficient.
 Databases -Python provides interfaces to all major
commercial databases.
 GUI Programming – Python supports GUI applications that
can be created and ported to many system calls, libraries,
and windows systems, such as Windows MFC, Macintosh,
and the X Windows System of UNIX.
 Scalable – Python provides a better structure and support
for large programs than shell scripting.
Apart from the above-mentioned features, Python has a big list
of good features, few are listed below –
 It supports functional and structured programming
methods as well as OOP.
 It can be used as a scripting language or can be compiled to
bytecode for building large applications.
 It provides very high-level dynamic data types and supports
dynamic type checking.
 It supports automatic garbage collection.

Sarvottam International School


12
Overview of MySQL
A database system is basically a computer-based record keeping
system. The collection of data, usually referred to as the
database, contains information about one enterprise. In a
typical file-processing system, permanent records are stored in
various file. Several different application programs are written
to extract records from files and add records to the appropriate
files. A data management system is answer to all these problem
as it provides a centralized control of the data.
Various advantages of data base system are:
 Database systems reduce data redundancy (data
duplication) to a large extent.
 Database system control data inconsistency to a large
extent.
 Database facilitate sharing of data.
 Database enforces standards.
 Centralized data bases can ensure data security.
 Integrity can be maintained through databases.
MySQL is a freely available source Relational Database
Management System (RDBMS) that uses Structured Query
Language (SQL). It is downloadable from the website
www.mysql.org. In a MySQL database, information can be
stored in tables. MySQL provides you with a rich set of features
that support a secure environment for storing maintaining &
accessing data. MySQL is a fast, reliable & scalable alternative

Sarvottam International School


13
to many of the commercial RDBMS related software available
today.
MySQL was created and is supported by MySQL Lab, a company
based in Sweden (www.mysql.org). This company was then
overtaken by Sun-Micro Systems, which had held the copyright
to most of the coding base. On April 20 th , 2009, Oracle
Corporation, which develops and sells the proprietary Oracle
Database, announced a deal to acquire Sun-Micro Systems
entirely.

Sarvottam International School


14
Database
Note:

• Display the options and take input from the user.

• Perform appropriate functions according to the user’s choice.

• Generate appropriate response.

• Allow the user to continue / or quit the program.

SQL DATABASE: -

Sarvottam International School


15
SOURCE CODE
#welcome to our rsp bank

import mysql.connector as sql

conn = sql.connect(host='localhost',

user='root',

password='tiger',

database='student',

c1 = conn.cursor()

#mn = "CREATE TABLE RECORDS( ACCONT_NO BIGINT(10) primary


key, PASSWORD INT(4), NAME VARCHAR(20),CR_AMT INT
default(0),WITHDRAWL INT default(0), BALANCE INT default(0))"

#c1.execute(mn)

print(

"========================================================
========================"

print(" WELCOME TO OUR RSP BANK")

print(" Banking made easy ")

print(

"========================================================
========================"

Sarvottam International School


16
print("1.To create account")

print("2.To login")

print("3.Exit")

print(

"========================================================
========================"

op = int(input("Enter your choice :"))

print(

"========================================================
========================"

if op == 1:

c = "y"

while c == "y":

m = int(input("Enter a 10 digit number as account number:"))

if m == 10:

cb = "select * from records where ACCONT_NO={}".format(m)

c1.execute(+cb)

d = c1.fetchall()

data = c1.rowcount

Sarvottam International School


17
if data == 1:

print(

"========================================================
========================"

print("This account number already exists:")

c = input("Do you want to continue y/n -")

print(

"========================================================
========================"

if c == "y":

continue

else:

print(" Thank you.")

print(" VISIT AGAIN")

print("Visit again")

print(

"========================================================
========================"

Sarvottam International School


18
)

else:

print("insufficient characters!!")

else:

name = input("Enter your name:")

passw = int(input("Enter your PIN:"))

ab = "insert into records(ACCONT_NO,PASSWORD,NAME)


values({},{},'{}')".format(

m, passw, name)

print(

"========================================================
========================"

c1.execute(ab)

conn.commit()

print("Account sucessfully created")

print("The minimum recommended balance is 1000 ")

print(

"========================================================
========================"

Sarvottam International School


19
s = int(input("Enter the money to be deposited :"))

print(

"========================================================
========================"

sr = "update records set CR_AMT={} where


ACCONT_NO={}".format(s, m)

c1.execute(sr)

conn.commit()

ef = "update records set balance=cr_amt-withdrawl where


ACCONT_NO={}".format(

m)

c1.execute(ef)

conn.commit()

print("sucessfully deposited")

print(" Thank you")

print(" VISIT AGAIN")

print("Visit again")

break

if op == 2:

global k

y = "y"

while y == "y":

Sarvottam International School


20
acct = int(input("Enter your account number:"))

cb = "select * from records where ACCONT_NO={}".format(acct)

c1.execute(cb)

c1.fetchall()

data = c1.rowcount

if data == 1:

pas = int(input("Enter your password :"))

print(

"========================================================
========================"

e = "select password from records where


ACCONT_NO={}".format(acct)

c1.execute(e)

a = c1.fetchone()

d = list(a)

if pas == d[0]:

print("correct")

print("1.Depositng money")

print("2.withdrawing money")

print("3.Transfering money")

print("4.Checking balance")

print("5.Change PIN ")

Sarvottam International School


21
print(

"========================================================
========================"

r = int(input("Enter your choice:"))

print(

"========================================================
========================"

if r == 1:

amt = int(input("Enter the money to be deposited:"))

print(

"========================================================
========================"

sr = "update records set CR_AMT=CR_AMT + {} where


ACCONT_NO={}".format(

amt, acct)

c1.execute(sr)

conn.commit()

ef = "update records set balance=cr_amt-withdrawl where


ACCONT_NO={}".format(

Sarvottam International School


22
acct)

c1.execute(ef)

conn.commit()

print("sucessfully deposited")

t = input("Do you want to continue y/n -")

print(

"========================================================
========================"

if t == "y":

continue

else:

print(" Thank you")

print(" VISIT AGAIN")

if r == 2:

amt = int(input("Enter the money to withdraw:"))

print(

"========================================================
========================"

ah = "select BALANCE from records where


accont_no={}".format(acct)

Sarvottam International School


23
c1.execute(ah)

m = c1.fetchone()

if amt > m[0]:

print("Your are having less than", amt)

print("Please try again")

print(

"========================================================
========================"

else:

sr = "update records set balance=balance - {} where


ACCONT_NO={}".format(

amt, acct)

ed = "update records set WITHDRAWL ={} where


ACCONT_NO={}".format(

amt, acct)

c1.execute(ed)

c1.execute(sr)

conn.commit()

print("Sucessfully updatad")

y = input("do you want to continue y/n -")

if y == "y":

continue

Sarvottam International School


24
else:

print(" Thank you")

print(" VISIT AGAIN")

if r == 3:

act = int(input("Enter the accont number to be transferrsd :"))

print(

"========================================================
========================"

cb = "select * from records where ACCONT_NO={}".format(act)

c1.execute(cb)

c1.fetchall()

data = c1.rowcount

if data == 1:

print(act, "number exists")

m = int(input("Enter the money to be transferred :"))

print(

"========================================================
========================"

ah = "select BALANCE from records where


accont_no={}".format(acct)

Sarvottam International School


25
c1.execute(ah)

c = c1.fetchone()

if m > c[0]:

print("Your are having less than", m)

print("Please try again")

print(

"========================================================
========================"

else:

av = "update records set balance=balance-{} where


ACCONT_NO={}".format(

m, acct)

cv = "update records set balance=balance+{} where


ACCONT_NO={}".format(

m, act)

w = "update records set withdrawl=withdrawl+{} where


accont_no={}".format(

m, acct)

t = "update records set CR_AMT=CR_AMT+{} where


accont_no={}".format(

m, act)

c1.execute(av)

c1.execute(cv)

Sarvottam International School


26
c1.execute(w)

c1.execute(t)

conn.commit()

print("Sucessfully transfered")

y = input("do you want to continue y/n -")

if y == "y":

continue

else:

print(" Thank you")

print(" VISIT AGAIN")

if r == 4:

ma = "select balance from records where accont_no={}".format(acct)

c1.execute(ma)

k = c1.fetchone()

print("Balance in your account=", k)

print(

"========================================================
========================"

y = input("do you want to continue y/n -")

if y == "y":

continue

Sarvottam International School


27
else:

print(" Thank you")

print(" VISIT AGAIN")

if r == 5:

cp = int(input("Enter the current pin:"))

i = int(input("Enter your new PIN:"))

cb = "select * from records where PASSWORD={}".format(i)

c1.execute(cb)

c1.fetchall()

data = c1.rowcount

if data == 1:

print("This number already exists:")

print("Try again")

y = input("do you want to continue y/n -")

if y == "y":

continue

else:

print(" Thank you")

print(" VISIT AGAIN")

else:

name = input("confirm your new pin")

ar = "Update records set PASSWORD={} where


accont_no={}".format(

Sarvottam International School


28
i, acct)

c1.execute(ar)

conn.commit()

print("Your new PIN is ", i)

else:

print("Wrong PIN")

print(

"========================================================
========================"

y = input("do you want to continue y/n -")

if y == "y":

continue

else:

print(" Thank you")

print(" VISIT AGAIN")

else:

print("your Account does not exists")

if op == 3:

print(" Exiting")

print(" VISIT AGAIN.")

c1.close()

Sarvottam International School


29
Outputs

Create account and deposit initial amount:

Sarvottam International School


30
Deposit money

Sarvottam International School


31
Withdraw money

Sarvottam International School


32
Stored data in the SQL console

Sarvottam International School


33
Records table described in SQL console

Sarvottam International School


34
Bibliography
• Computer science With Python - Class XII by
Sumita Arora
• A Project Report on Blood Bank Management
System (BBMS)
By: Praveen C ADHIYAMAAN
• Website: https://www.w3resource.com
• https://en.wikipedia.org/

Sarvottam International School


35

You might also like