0 ratings0% found this document useful (0 votes) 105 views31 pagesComputer Science Project
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here.
Available Formats
Download as PDF or read online on Scribd
eS
NAME : KOYAL BASU
CLASS : XiIl
STREAM: SCIENCE
_
ROLL :
Page
pLgrocarestoncnepmnennmatnemnntentrarttinnnnenshnesiehaiemeshrertcnsimhuncutnbundennmneneienentemtdrarietiemeaeenremnnendacnunnutomntmtinmatninchanremiene
CERTIFICATE
This is to certify that Computer Science Project
titles by “Library Management System” has
been successfully completed by KOYAL BASU
Of class XII, bearing Roll no. under the
guidance of Mrs. SWAGATA DEY(Subject
Teacher) as prescribed by AISSCE course
during the academic year 2023-2024
Signature of external teacher Signature of Subject Teacher
AL earacntinens nnn te tanmecnsstssurensnecenntntnterinireerenenaneanTenKrAnO AAAI RLRARNENERTENERERTEMAN NNRforensic rlN eee rae aN a Em rer ware meaaetem mre ately
ACKNOWLEDGEMENT
| would like to express a deep sense of thanks &
gratitude to my project guide Mrs. SWAGATA DEY mam
for guiding me immensely through the course of project.
He always evinced keen interest in my work. His
constructive advice & constant motivation have been
responsible for the successful completion of the project.
Last but not the least , | would like to thank all those
who had helped directly or indirectly towards the
completion of this project.
Student's Name : KOYAL BASU
Class XII, SEC-SCIENCE .
| Pages
Beene eee nena R ER EERE EEK EEE EEE EERE ERNEFEAR RRR EERIE RRR RRR
ABSTRACT
Library management system is a project which aims in
developing a computerized system to maintain all the daily
work of library .This project has many features which are
generally not available in normal library management
systems like facility of user login and a facility of teachers
login .It also has a facility of admin login through which
the admin can monitor the whole system . It has also a
facility where student after logging in their accounts can
see list of books issued and its issue date and return date
and also the students can request the librarian to add new
books by filling the book request form. The librarian can
generate various reports such as student report, issue
report, teacher report and book report
Overall this project of ours is being developed to help the
students as well as staff of library to maintain the library
in the best way possible and also reduce the human
efforts.
ReLwenernnCnnennnTEnEnemRMRmenREERENRNM EMR RER RRR MN e ERT ETE
i inal
ReenesPROJECT AIMS AND OBJECTIVES
The project aims and objectives that will be
achieved after completion of this project. The aims
and objectives are as follows:
+ Online book issue
+ Request column for librarian for providing new
books
+ Aseparate column for digital library
+ Student login page where student can find books
issued by him/her and date of return.
+ Asearch column to search availability of books
+ A teacher login page where teacher can add
important suggestions regarding books.
s.r NR RRR NRE AT NRTA RTGS
Beier[ornare nanennnnnnnnnnnnsNERA OETA RCEETR EEE EEAEE TRAD EE AAAEEEEEOELED
J l
OPERATION ENVIRONMENT
PROCESSOR INTEL CORE PROCESSOR OR BETTER
PERFORMANCE
OPERATING SYSTEM | WINDOWS VISTA WINDOWS-7, WINDOWS-10
MEMORY 1GB RAM OR MORE
HARD DISK SPACE MINIMUM 512 GB FOR DATABASE USAGE FORFUTURE
DATABASE My SQL
LANGUAGE IDLE Python 3.7.4
| Paves |
Naseer
Ihe ee NON
|pecrevweeemmrmenenmenrernnnnrrnneneenenenennnnneenennmeeenmmmnarseY
PRODUCT DESCRIPTIO.
SYSTEM ANALYSIS
GENERAL DESCRIPTION
Library Management System is a computerized system which helps user(librarian) to
manage the library dally activity in electronic format. It reducesthe risk of paper work
such as file lost, file damaged and time consuming.
It can help user to manage the transaction or record more effectively and time-
saving
PROBLEM STATEMENT:
The problem occurred before having computerized system includes:
File lost
When computerized system is not implemented file is always lost because
of humanenvironment.Some times 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 tosome accident like spilling of water by some member on file
accidentally. Besides some natural disaster like floods or fires may also
damage the files.
Difficult to search record
When there is no computerized system there is always a difficulty in
searching ofrecords if the records are large in number .
Space consuming
‘After the number of records become large the space for physical storage
of file andrecords also increases if no computerized system is
implemented.
Cost consuming
As there is no computerized system the to add each record paper will
be neededwhich will increase the cost for the management of library.
doewenemcrrnrerenemmuunmmmnnnnennnnnnnnenmennEneenEnnnnERemmmmnnE Teen EY
SYSTEM OBJECTIVES
‘+ Improvement in control and performance : The system is developed to cope up with
the current issues and problems of library .The system can add user, validate user and is,
also bug free.
* Save cost : After computerized system is implemented less human force
will be required tomaintain the library thus reducing the overall cost.
‘* Save time : Librarian is able to search record by using few clicks of mouse
and few searchkeywords thus saving his valuable time.
project guide.
Packages and Modules used
1. numpy : To handle calculation
2. 0s : To handle files and directory
3. mysql! : To handle SQL database
4. connector : To established SQL database connectivity.
Page 8
AAA TTT
|
|
'
|
i
‘
i
|
i
'
j
'
|
|
i|
|
|
|
|
|
FUNCTIONAL REQUIREMENTS
1. USER LOGIN
This feature used by the user to login into system. They are required to enter user id and
password before they are allowed to enter the system .The user id and password will be
verifiedand if invalid id is there user is allowed to not enter the system.
2. REGISTER NEW USER
This feature can be performed by all users to register new user to create account.
3. REGISTER NEW BOOK
This feature allows to add new books to the library
4, SEARCH BOOK
This feature is found in book maintenance part . we can search book based on
book id ,
book name , publication or by author name.
5, ISSUE BOOKS AND RETURN BOOKS
This feature allows to issue and return books and also view reports of book issued.
| Pages
perennation NNN NAN ENR ATR TER NARERE NL TORRRNNSOFTWARE AND HARDWARE REQUIREMENTS
This section describes the software and hardware requirements of the system
SOFTWARE REQUIREMENTS
+ Operating system- Windows 7 or Windows — 10 is
used as the operating system as it is stable and
supports more features and is more user friendly
+ Database MYSQL-MYSQL is used as database as it
easy to maintain and retrieverecords by simple queries
which are in English language which are easy to
understand and easy to write.
+ Development tools and Programming language- IDLE
Python (Version 3.7.4) is used to write the wholecode .
HARDWARE REQUIREMENTS
» Intel core i3 is used as a processor because it is fast
than other processors an provide reliable and stable
and we can run our pc for longtime. By using this
processor we can keep on developing our project
without any worries.
» Ram 2 GBis used as it will provide fast reading
and writing capabilities
and will in turn support in processing
HARD DISK minimum 512 GB.
Page 10
Dante nine eee RRA K Ke SEE EER KERR TElJ
foeeceecceneencerectnectacennetenetittatttettateit
J l
SYSTEM DESIGN
VARIOUS TABELS TO
MAINTAIN INFORMATION
BOOK TABLE FOR KEEPING TRACK OF BOOKS
iz enn Peres Em
Code. INT(1) Not Null Primary Auto
increment
Bookname VARCHAR(255) Null
‘Author VARCHAR(255) Null
Publication VARCHAR(255) Null
Subject VARCHAR(255) Null
No of INT(10) Null
copie
s
rr Perry ee oy Extra
tibia INTC) NOTNULL Primary key Auto inorement
regno——INT(10) NULL
branch VARCHAR(255)_ NULL
section VARCHAR(255)_ NULL
semester. VARCHAR(255) NULL
section VARCHAR(2) NULL
yearofadm INT(S) NULL.
| Paget |
4
|
|
|
i
| STUDENT TABLE FOR STUDENT INFORMATION
4
|
|
;
i
|
3
4TEACHER TABLE TO KEEPTEACHER
INFORMATION
rr Pera) Sony 7 Ear
Tid INTC) NOTNULL — Primarykey Auto
increment
Name VARCHAR(255) NULL
Designation VARCHAR(255)_ NULL
Branch VARCHAR(255) NULL
Contactno —INT(13) NULL
Lectures LONGBLOB NULL.
Issue table to keep track of books issued
Field Gaaelaa Goal acd ry
bookid INT(I1) NOTNULL — Foreignkey References
book
INT(11) NOTNULL — Foreignkey References
‘Student
DATE NULL.
DATE NULL.
STUDENT LOGIN TABLE
Dry Carry coy] ear)
logid wnT(r) NOTNULL — Foreignkey Reference
sStudent
Usemame VARCHAR(255) NULL
Password VARCHAR(255) NULL
numbooks —_INT(1) NULLTEACHER LOGIN TABLE
Pry Po roy
Loginid INT(11) NOTNULL Foreign Reference
key. steacher
Username VARCHAR(255) NULL
Password VARCHAR(255) NULL
Page 13MODULE DESCRIPTION
For Library Management System it is divided into the following Modules:
Admin Module
ADMIN
‘STUDENT TEACHER BOOK ADDITION REPORT
VALIDATIO REGISTRATI GENERATIO
Student Module
STUDENT
STUDENT STUDENT LOGIN | | ONLINE EVENT ADDITION
REGISTRATI BOOK
USERNAME FORGOT
AND PASSWOR
PASSWORD D
l Paget |
Danerdanctee eee RRR EERE EEE ARK EEE ERROR|
Teacher Module
TEACHER
SUGGESTIONS
TEACHER LOGIN EVENT ADDITION|
USERNAME FORGOT
AND PASSWOR
PASSWORD D
Book Module
BOOK MAINTENANCE
ADD NEW BOOK ‘SEARCH BOOK
gee serenccrest ns ttnatr nc a ARANAr HRN NAA EN RRR NNENHTEAEN
tence reneneeereenenernereeceneen ceedBook Transaction Module
|
|
|
|
|
BOOK TRANSACTION
ISSUE 800K RETURN BOOK CHECK
RESERVATI
Report Module
REPORT
STUDENT REPORT | | TEACHER BOOK REPORT TRANSACTI
REPORT ONREPORT
Page 16
bs—~
poset esse neato mnt AANA RNR NEE HIN NNNNRNR NR
SOURCE CODE COPIED FROM THE NOTE PAD
import mysql.connector as sqltor
mycon=sq|ltor.connect(host="localhost',user="r
oot",
password="",database="library_management")
if mycon.is_connected():
print(‘Successfully Connected to MySQL
database’)
import mysql.connector as sqltor
mycon=sqltor.connect(host="localhost" user="r
oot",
password=""",database='library_management")
cursor=mycon.cursor()
cursor.execute("select * from books")
for i in cursor:
print(i)import mysql.connector as sqltor
mycon=sqltor.connect(host="localhost' user="r
oot",
password="",database="library_management")
cursor=mycon.cursor()
cursor.execute("select * from members")
for i in cursor:
print(i)
import mysql.connector as sqltor
mycon=sqltor.connect(host="localhost',user="r
oot" password="",database="library_manageme
nt")
cursor=mycon.cursor()
cursor.execute("select * from fine_details")
for iin cursor:
print(i)
import mysql.connector as sqltor
mycon=sqltor.connect(host="localhost',user="r
oot" password="",database="library_manageme
ALLL LLETEE OLE LRRNNNN TERE NE NENEMNN Cee ees teseseus xeeiea een een eee en ee ee A
mycon.cursor()
cursor.execute("select * from book_issue")
nt")
cursor=
for iin cursor:
print(i)
|
r
r
hewennnrnmnrrrmmrnmmnnnrnnerrnnennrnmnnnnnnnnnrnenmmnmmmmmnmnearmeaees|
prisms ee nr
SECREEN SHOTS OF CODES FROM
PYTHON SHELLPython 3.9:0. (cago/v3.9.0:90F6752, Oot § 2020, 15+38+80) [WIC v.1597 € Dit (ANDSA)] on wind?
Type "neip", Toopyeight™, “oraaitem or "Iiceaga(y® for mora Information.
doy smpert myaql-connector *= sqitor
D> myeonregl tor connect (host=*Localhost™, uaer~Mrsct",password+"™, datebenen"Likeaty management”)
9o> Sursor-mycon. cursor ()
353 Grser-execute(moriee: + from books")
S53 for din cursos:
prime)
+xeeT32" otersnecate(2018, 11, 10), ‘2015', 414", ‘Babie")
(sasazusr', date(2013, 16, 23), *2019', *249!, *aarey potter")
(*hiWS30H; tRoheahy dateeime-dace (2007, 7, 2), "2020"; "1000", ‘atiaa")
{SSVSGRSLS, sManaab'y datetine ante (2002, 4; 29], ‘abor!, 1280", ‘Bronteeh)
Python 3.9:0 (cage/v3.9,079eE6752, Ost § 2020, 25:34:40) (MC v.1927 G4 bit (AMDGA)] on win’?
Type "help", “copyright, "oredite™ or "Liseasa()™ for mors information.
S35 npert myaqi-connector n= aqitor
S55 nysonmagl tor connect (host=" localhost; uaar="rsot",pasaword="",databare="Library menegenent")
> etirsor-nycon cursor (1
don cursorwenccute("ssise: * from mene
S53 ford in cursos:
peine()
({57QuT09", tAnkan', ‘Delhi*, ciatetine.data(2018, 12, 23), cintetime.date (2020, 12, 23))
+9SET245'; tAman',' ‘Patna’, "datetine,date(2019, 12, 24),”datatine.dave (2020, 21, 24))
(sw7s90u') theyeah', "koiksca'; aacstime date (2001, 2, 3), dacorsne dees (2002, 3, 3))
(9z3892", ‘Rddtya, “Burdwan; datetime.date (2007, 12, 25), daterime-date(2003, 22, 23))ee
Python 3.8:0 (caga/w3.¥.0:8cE0752, O=t 5 2020, 18:3440) [Mae v.4527 €4 BIE
Type "belp", “conyeicat™, "Liseass()* for more information.
Serediten or
import fyoql connector as aqltor
myconmagiter -ooansct (noat=mloonihost™", sera root
Sbesornysonseursor
cursor execnite(use lars © teem cane saad ie")
print (2)
Montn!, *400")
Months, 12200")
Yeas", ‘aa0u"y
nor
spasaxorder, davabess
(owpse) |) on wins?
2ibrary janegenent™)
Python 3.9.0 (cago/¥3.9,0:90E6752, Oct 5 2020, 28:34:40) (Msc v.2027 64 bit
(easazasr',
(oxssers2
(dresesu.
ampert fiysal-connector ss sqltor,
nyconraigl torseonnsct (heat="Tor Th
borsorenyconseursoy
cursor oxecuta ("eciee
BSS Sess
eae)
disenss()
st user="ro0t" paseworde™
sunr3908",
sSigazes |
s3eRn205",
Gavatime-dats (2002, 12,
ececimesaate (2001, 10, 12); aat
Sacctine date (2019, 8,10),
datetime -date (2016,
13), davocims-date (2002,
rmecdate(2002, 12, 26),
eatetine-dace(2013, 9,
a) 16), aatetine dace (226, 3)
(@xmst)| on wins?
database" ibrary manegenent*)
12, 20), 10")
so!
tony
400")
in,
30;SCREEN SHOTS OF OUTPUTS
OF EVERY INDIVIDUAL OPERATIONS
geet nce mnt nt atm enna NRE AE RHE EHR ARNNRR NEAR
| Page 23 4irython 3.9.0" (eage/v3.9.0:90f6752, Oct $702), 1Sz34e40) (Msc v.1597 & bit (ANTEA)T on wind?
Tipe "nein", “copyrighe’, “creaits" or "Licenso()* for more Latsmacion.
RESTART: C+\Users\RoushiX\Desktop\aniket\Python\mysgl connector-py
((o1gTSs", ‘Ankan', "Delhi", datorine date(2023, 12, 23); datetina.dace(2020, 22, 291)
(raserzas') taman",”‘zatae", aaestine,dsta (2013," 11, 24), davatine-dste (2020, 13," 23))
(aw7ss0n+; tRejesh?, TKorkatat, dovet imecdate (2001, 2, 3), datetiime.dste (2002, 2, 3)]
QPEREBEORT Eyes, “Buncnen; deetdme‘ date (Z00), 1, yy "catatime date dey 42, 291)
Python 3.5.0 (tago/¥3-9, #9078722, Oot 5 2020, 1813440) [MEG v-I527 @F BIt (ARDBA)T on WINS?
‘Type theipt, Seopyright”, Tereditot or "iieenae()® for more informat lone
SL_.- agsranr: c:\0sors\koushik\Desicop\antxet\2ython\ayed) connector.py <=
(1 week "10
(1 moment, 400")
(02 Mentha!
(1 Meats
SetPrthon 3.9.0 (cage/v3.9,01906752, dot 3 2020, 38134240)
(usc v.1927 e¢ bit TAMDed)| on winsz
type "aeip*, “eopyesie
oF tlisanea()* for more deformations
Ley zy, 0
Satctine.dasa(2002, 12, 26), *10")
doterinesdate 2015, 9, 171+ tO")
2G)) Ssestimelaees ote) $) 26)) obey
A _ pastAat: 0: \gers\Koushse\Deaktcp\aniret\2ythos\myaq connector.py
(aganust", 'UNV390K", datetima-dae (2002, 12, 13)y aatetamc.dars (2002,
(aasera2") ‘yws3e62", Satetimecdace(2001, 10, 12),
(oreskane; 'STowre9", atetimecdaes(2019, 9, 10),
(msseu | ‘sanr24s'; Gatetinecdare(20ie, 4
STManipulate SQL
Databases with Python
. Adding Records into books table
Add some records to the tables. Let's start with the "books” table.
import mysql.connector as sqltor
root",
cursor.execute("INSERT INTO books VALUES
((A435T1', ‘James’, 1985-04-20, 1985, 450,Jungle Story’),
(K43572’, ‘Martin’, 1999-04-20, 1999, 1020,Foods harm Foods heal’),”)
foriin cursor:
print(i)
. Adding Records
Add some records to the “fine_details” table.
import mysql.connector as sqltor
mycon=sqitor.connect(host="localhost’ use
password=",database="library_management’)
cursor=mycon.cursor()
cursor.execute("INSERT INTO fine_details VALUES
(3 Week’, '35),
(2 Week’, '20'")
fori in cursor:
print(i)
|
|
|
|
|
|
|
|
iSOCAN ARR RARE KKK ARATE
|
Updating Records
When we are maintaining a database, we will sometimes need to
make changes to existing records.
SQL UPDATE statement for ‘books’ table.
update
UPDATE books
SET book ID = 'tk09ewp
WHERE book_name = ‘Atlas’;
connection = create_db_conneetion("localhost’, "root, pw, db)
execute_query(connection, update)
SQL UPDATE statement for ‘members’ table.
update ="*
UPDATE members
SET address = '23 Fingiertweg, 14534 Berlin’
WHERE members_id = ‘JSKI245';
connection = create_db_connection(“localhost’, ‘root’, pw, db)
execute_query(connection, update)
SQL UPDATE statement for ‘fine_details’ table.
update
UPDATE fine_detalls,
SET amount = 20
WHERE no_of_week = 1 week’;
connection = create_db_connection("localhast’, "root", pw, db)
execute_query(connection, update)
Page 27
EAE
lennencennnmenemenmennmmmnnenmenemennnimmmnnnmenemensnanmmmcmeninentanlrs:
posers ncn nn AR AA RL LAR RRA RARER NEAR
|
Deleting Records
It is also possible use our execute_query function to delete records,
by using DELETE.
Delete Books from ‘books’ table
delete_book
DELETE FROM books
WHERE price> = 400;
connection = create_db_connection("localhast’, "root", pw, db)
execute_query(connection, delete_book)
Delete Books from ‘members’ table
delete_member:
DELETE FROM members
WHERE members_id = ‘JSKI245;
connection = create_db_conneetion(“Iocalhost’, "root", pw, db)
execute_query(connection, delete_members)
Delete records from ‘book_issue’ table
delete_record:
DELETE FROM book issue
WHERE book id = ‘435732
connection = create_db_conneetion("Iocalhost’, ‘root’, pw, db)
execute_query(connection, delete records)
cco.DISPLAY Records from table “books”
import mysql.connector as sqltor
mycon=sqitor.connect(host="localhost’user
password=",database="library_management’)
cursor=mycon.cursor()
cursor.execute("SELECT * from books")
result=cursor.fetchall()
for iin result:
print(i)
root",
Output:
((A435T1', ‘James’, 1985-04-20, 1985, 450,'Jungle Story’),
(K435T2’, ‘Martin’, 1999-04-20", 1999, 1020,Foods harm Foods heal’)
DISPLAY Records from table “book _issue”
import mysql.connector as sqltor
connect(host="localhost’,use
fatabase="library_management’)
yyeon.cursor()
cursor.execute("SELECT * from book issue”)
result=cursor.fetchall()
for iin result:
print(i)
Outpu:
(*AS42H3T', 'UN7390H", datetine.date(2002, 12, 13), datetime.date (2002, 12, 20), '0")
(14439732", 'YWI3892", datetine.date (2001, 10, 12), datetime.date(2002, 12, 26), *10")
(13763k3L', 'STQNTGS', datetine.date (2019, 9, 10), datetime.dace(2019, 9, 17), 10")
(CHRWS39M", ‘JSKIZ45', datetime.date(2016, 4, 16), datetime.date(2016, 5, 16), *400")
| Page 29
AEA ASA AEE
Lod
SEARCH Records from table “books”
import mysql.connector as sqltor
mycon=sqltor.connect(host="localhost’,user="root",
password=",database='library_management’)
cursor=mycon.cursor()
cursor.execute("SELECT * from books
where book id="k435T2")
result=cursor.fetchall()
for iin result:
print(i)
Output:
(K435T2’, ‘Martin’, 1999-04-20, 1999, 1020,Foods harm Foods heal’),”)
AKER RR KIRAN RRR ARIAL RATER NRNROR TENN
Page 30
|
remoleORT ETE CH NR aR Tee wn ean
CONCLUSION & FUTURE SCOPE
This Software provides a computerized version of library
management system which will benefitthe students as
well as the staff of the library.
It makes entire process where student can search books,
staff can generate reports and dobook transactions. It
also has a facility for student login where student can
login and can see status of books issued as well request
for book or give some suggestions.
| Dage 3
1 cc ii iii iia
pees ncaa nti LARNER KARATE IRON TEE RE RATER ENTER RONEN RE