You are on page 1of 19

Internal Examiner External Examiner

Principal Head of the Department


8 Python and SQL

9 Source Code

10 Sample Outputs

11 Conclusion

12 Bibliography

ACKNOWLEDGEMENT

My endeavor incomplete without dedicating my gratitude to the people who have


contributed a lot towards the successful completion of my project. I offer my humble
gratitude to the Amma, Sri.MataAmritanandamayi Devi who has been source of love,
grace and moral support.
I express my deep sense thanks of obligation to BrahmachariniSreelatha T.S,
the principal of our school.andSri. SunilKumar MThe academic advisor of our school
who has a great source of inspiration for completing this project.

I am greatly indebted to Mrs. Krishna N S, teacher in computer science for her


expert guidance and support throughout the completion of this project.

Last but not least , I would like to thank almighty, my parents, brothers, sisters and
friends for their constant encouragement without whom the project could not have been
finished successfully.
PROJECT
ON
STUDENT MANAGEMENT SYSTEM

INTRODUCTION
Student Management System project is written in Python language and SQL is
used for database connection. This is a simple console based system which is very
easy to understand and use. Talking about the system, it contains all the basic
functions which include insert new student details, view student’s details that
already exists, update or we can modify student details also deletion function is
there to delete the student details that no more exist. It is too easy to use; he/she
can check the total student records easily. This project is multifield project, so that
it can be modified for various purposes. The main object of this system is to
provide a secure 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.
 Write programs utilizing modern software tools.
 Apply object oriented programming principles effectively when developing
small to medium sized projects.
 Implementing strong security measure to protect sensitive financial data.

SCOPE OF THE PROJECT


 User friendly interface
 Fast access to database
 Less error
 More Storage Capacity Search facility
 Look and Feel Environment

EXISTING SYSTEM
In the current system we need to keep a number of records related to the student
and want to enter the details of the student and the marks manually. In this system
only the teacher or the school authority views the mark of the student and they
want to enter the details of the student. This is time consuming and has much cost.

PROPOSED SYSTEM
Aim of the this system is used to control and coordinate a student’s data ,
information ,their ,name, admission number ,add new student or delete a student’s
information. One has to use the data management software. Software has been an
ascent in atomization various organizations. Many software products working are
now in markets, which have helped in making the organizations work easier and
efficiently. Data management initially had to maintain a lot of ledgers and a lot of
paper work has to be done but now software product on this organization has made
their work faster and easier. Now only this software has to be loaded on the
computer and work can be done.

This prevents a lot of time and money. The work becomes fully automated and any
information regarding the organization can be obtained by clicking the button.
Moreover, now it’s an age of computers of and automating such an organization
gives the better look.Admin will have the full authority to add features and disable
it as per their requirements.

HARDWARE AND
SOFTWAREREQUIREMENT
HARDWARE REQUIREMENT
 Processor : Intel(R) Core(TM)-i3 or (ANY)

 RAM : 4 GB+ RAM

 Clock Speed : 2.3 GHz

 Keyboard : 101 Keys

 Mouse : Optical Mouse

SOFTWARE REQUIREMENT
 Front End : Python

 Back End : SQL

 Operating System : Windows XP or above


WHAT IS PYTHON
Python is an interpreted high-level general-purpose programming language. Its design
philosophy emphasizes code readability with its use of significant indentation. Its language
constructs as well as its object-oriented approach aim to help programmers write clear, logical
code for small and large-scale projects.[31]

Python is dynamically-typed and garbage-collected. It supports multiple programming


paradigms, including structured (particularly, procedural), object-oriented and functional
programming. It is often described as a "batteries included" language due to its
comprehensive standard library.

Features in Python

There are many features in Python, some of which are discussed below –
1. Easy to code:
Python is a high-level programming language. Python is very easy to learn the
language as compared to other languages like C, C#, Javascript, 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.

2. Free and Open Source:


Python language is freely available at the official website and you can download it
easily.
Since it is open-source, this means that source code is also available to the public. So
you can download it as, use it as well as share it.
3. Object-Oriented Language:
One of the key features of python is Object-Oriented programming. Python supports
object-oriented language and concepts of classes, objects encapsulation, etc.
4. GUI Programming Support:
Graphical User interfaces can be made using a module such as PyQt5, PyQt4,
wxPython, or Tk in python.
PyQt5 is the most popular option for creating graphical apps with Python.
5. High-Level Language:
Python is a high-level language. When we write programs in python, we do not need to
remember the system architecture, nor do we need to manage the memory.
6. Extensible feature:
Python is a Extensible language. We can write us some Python code into C or C++
language and also we can compile that code in C/C++ language.
7. Python is Portable language:
Python language is also a portable language. For example, if we have python code for
windows and if we want to run this code on other platforms such as Linux, Unix, and
Mac then we do not need to change it, we can run this code on any platform.
8. Python is Integrated language:
Python is also an Integrated language because we can easily integrated python with
other languages like c, c++, etc.
9. Interpreted Language:
Python is an Interpreted Language because Python code is executed line by line at a
time. like other languages C, C++, Java, etc. there is no need to compile python code
this makes it easier to debug our code. The source code of python is converted into an
immediate form called bytecode.
10. Large Standard Library
Python has a large standard library which provides a rich set of module and functions
so you do not have to write your own code for every single thing. There are many
libraries present in python for such as regular expressions, unit-testing, web browsers,
etc.
11. Dynamically Typed Language:
Python is a dynamically-typed language. That means the type (for example- int, double,
long, etc.) for a variable is decided at run time not in advance because of this feature we
don’t need to specify the type of variable.
Structured Query Language(SQL)
WHAT IS SQL
SQL stands for Structured Query Language. It is used for storing and managing data in
relational database management system (RDMS). It is a standard language for Relational
Database System. SQL is used to communicate with a database. According to ANSI (American
National Standards Institute), it is the standard language for relational database management
systems. SQL statements are used to perform tasks such as update data on a database, or retrieve
data from a database. Some common relational database management systems that use SQL are:
Oracle, Sybase, Microsoft SQL Server, Access, Ingres, etc.. However, the standard SQL
commands such as "Select", "Insert", "Update", "Delete", "Create", and "Drop" can be used to
accomplish almost everything that one needs to do with a database.
There are the following advantages of SQL:
 High speed. Using the SQL queries, the user can quickly and efficiently retrieve a large
amount of records from a database.
 No coding needed. ...
 Well defined standards. ...
 Portability. ...
 Interactive language. ...
 Multiple data view.

The features of SQL:

 SQL is an ANSI and ISO standard computer language for creating and manipulating
databases.
 SQL allows the user to create, update, delete, and retrieve data from a database. SQL is
very simple and easy to learn.
 SQL works with database programs like DB2, Oracle, MS Access, Sybase, MS SQL
Server, etc.
 SQL Queries can be used to retrieve large amounts of records from a database quickly
and efficiently.

PYTHON MYSQL CONNECTIVITY


What are the steps for connecting MySQL with Python?
How to connect MySQL database in Python
1. Install MySQL connector module. Use the pip command to install MySQL connector Python. ...
2. Import MySQL connector module. ...
3. Use the connect() method. ...
4. Use the cursor() method. ...
5. Use the execute() method. ...
6. Extract result using fetchall() ...
7. Close cursor and connection objects.

Example
Following is the example of connecting with MySQL database "TESTDB"
#!/usr/bin/python

importMySQLdb

# Open database connection


db=MySQLdb.connect("localhost","testuser","test123","TESTDB")

# prepare a cursor object using cursor() method


cursor=db.cursor()

# execute SQL query using execute() method.


cursor.execute("SELECT VERSION()")

# Fetch a single row using fetchone() method.


data=cursor.fetchone()
print"Database version : %s "% data

# disconnect from server


db.close()

READ Operation.
 fetchone() − It fetches the next row of a query result set. A result set is an object that is
returned when a cursor object is used to query a table.
 fetchall() − It fetches all the rows in a result set. If some rows have already been
extracted from the result set, then it retrieves the remaining rows from the result set.
 rowcount − This is a read-only attribute and returns the number of rows that were
affected by an execute() method.

Source code
importos

import platform

importmysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",password="ammaamrita")

mycursor=mydb.cursor()

mycursor.execute("create database if not exists school")

mycursor.execute("use school")

exit='n'

while exit=='n':

os.system('cls')

print('-' * 90)

print('|'+' '*31+'STUDENT MANAGEMENT SYSTEM'+' ' * 32+ '|')

print('-' * 90)

print('| [I]nsert Record |', end='')

print(' [V]iew Record |', end='')

print(' [U]pdate Record |',end='')

print(' [D]elete Record |',end='')

print(' [E]XIT |')

print('-' * 90)
ch=input('YOUR Choice (I/V/U/D/E):')

ch = ch.upper()

ifch == 'I':

mydb=mysql.connector.connect(host="localhost", user="root", passwd="ammaamrita",


db="school")

mycursor=mydb.cursor()

choice='y'

while choice=='y':

sno=input('enter the roll number of student ')

sname=input('enter the name of student ')

print(" Creating Parkmaster12 table")

mycursor.execute("create table if not exists class12 (rnoint, name varchar(20))")

Qry = ("INSERT INTO class12 "\

"VALUES (%s, %s)")

data = (sno,sname)

mycursor.execute(Qry,data)

print('RECORD INSERTED SUCCESSFULLY')

choice=input('do you with to insert more records (y/n)')

if choice=='y':

continue

mydb.commit()

mydb.close()

elifch == 'V':
mydb=mysql.connector.connect(host="localhost", user="root", passwd="ammaamrita", db="school")

mycursor=mydb.cursor()

#mycursor.execute("""create table class12 (rnoint, name varchar(20))""")

choice='y'

while choice=='y':

rno=int(input('enter the roll number of student whose record you want to search '))

Qry = ("""select * from class12 WHERE rno = %s""")

data = (rno,)

mycursor.execute(Qry,data)

count=0

for(rno,name)in mycursor:

count+=1

print('=========')

print('Student Roll No ',rno)

print('Student Name ',name)

print('===========')

if count%2==0:

print('press any key to continue')

clrscreen()

print('total records',count,'found')
choice=input('do you with to search more record(y/n)')

if choice=='y':

continue

mydb.commit()

mydb.close()

elifch == 'U':

mydb=mysql.connector.connect(host="localhost", user="root", passwd="ammaamrita", db="school")

mycursor=mydb.cursor()

#mycursor.execute("""create table class12 (rnoint, name varchar(20))""")

choice='y'

while(choice=='y'):

rno=int(input('enter the roll number of student whose record you want to change '))

name=input('enter new name')

Qry = ("""UPDATE class12 set name=%s WHERE rno = %s""")

data = (name,rno)

mycursor.execute(Qry,data)

print('RECORD UPDATED SUCCESSFULLY')

choice=input('do you wish to update more records(y/n)')

if choice=='y':

continue

mydb.commit()
mydb.close()

elifch == 'D':

mydb=mysql.connector.connect(host="localhost", user="root", passwd="ammaamrita", db="school")

mycursor=mydb.cursor()

#mycursor.execute("""create table class12 (rnoint, name varchar(20))""")

choice='y'

while choice=='y':

rno=int(input('enter the roll number of student whose record you want to delete '))

Qry = ("""DELETE FROM class12 WHERE rno = %s""")

data = (rno,)

mycursor.execute(Qry,data)

print('RECORD DELETED SUCCESSFULLY')

choice=input('Do you wish to delete more records(y/n) ?')

if choice=='y':

continue

mydb.commit()

mydb.close()

elifch == 'E':

print("\n\t\t Thanks for using Student Management System...")

print("\t\t-------------------------------------------")

break

else:

print('\t\t\t Error : Not a Valid Option ')


print('\t\t Valid option are "I", "V", "U", "D", or "E" only')

exit=input('\t\t Do you wish to exit the program(y/n)')

if exit=='n':

continue

Sample Outputs

1)Inserting student record.

2)Viewing student record.


3)Updating student record.

4)Deleting student record.


5)Exiting from student record.

Conclusion
This Student Management System Project in Python is
a way to enhance and broaden our competencies and logic ideas which
is essential in training the Python programming language.
In this Simple Student Management System, the user can also look for a
student’s call so one can recognize whether the student’s record exists in

the gadget or not.This project covers only the basic features required.

BIBLIOGRAPHY:

 COMPUTER SCIENCE WITH PYTHON,


By Sumita Arora

 WEBSITE: https://www.wikipedia.org

You might also like