0% found this document useful (0 votes)
5 views4 pages

LibraryDB_SQL_Script_Colorful

The document contains SQL scripts for creating a Library Management System database named LibraryDB. It includes the creation of tables for storing details about books, members, staff, transactions, and fines, each with specific attributes and constraints. The structure supports functionalities such as tracking book issues and returns, managing member information, and handling fines.

Uploaded by

Subham SiNgh
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)
5 views4 pages

LibraryDB_SQL_Script_Colorful

The document contains SQL scripts for creating a Library Management System database named LibraryDB. It includes the creation of tables for storing details about books, members, staff, transactions, and fines, each with specific attributes and constraints. The structure supports functionalities such as tracking book issues and returns, managing member information, and handling fines.

Uploaded by

Subham SiNgh
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/ 4

Library Management System - SQL Script

<div class="highlight" style="background: #ffffff"><pre style="line-height: 125%;"><span></span><span


style="color: #888888">-- Create database</span>
<span style="color: #008800; font-weight: bold">CREATE</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">DATABASE</span><span style="color: #bbbbbb"> </span>LibraryDB;
USE<span style="color: #bbbbbb"> </span>LibraryDB;

<span style="color: #888888">-- Table for storing book details</span>


<span style="color: #008800; font-weight: bold">CREATE</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">TABLE</span><span style="color: #bbbbbb"> </span>Books<span
style="color: #bbbbbb"> </span>(
<span style="color: #bbbbbb"> </span>BookID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">PRIMARY</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">KEY</span><span style="color: #bbbbbb"> </span>AUTO_INCREMENT,
<span style="color: #bbbbbb"> </span>Title<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">255</span>)<span style="color:
#bbbbbb"> </span><span style="color: #008800; font-weight: bold">NOT</span><span style="color: #bbbbbb">
</span><span style="color: #008800; font-weight: bold">NULL</span>,
<span style="color: #bbbbbb"> </span>Author<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">255</span>)<span style="color:
#bbbbbb"> </span><span style="color: #008800; font-weight: bold">NOT</span><span style="color: #bbbbbb">
</span><span style="color: #008800; font-weight: bold">NULL</span>,
<span style="color: #bbbbbb"> </span>Publisher<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">255</span>),
<span style="color: #bbbbbb"> </span>YearPublished<span style="color: #bbbbbb"> </span><span style="color:
#008800; font-weight: bold">YEAR</span>,
<span style="color: #bbbbbb"> </span>ISBN<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">20</span>)<span style="color: #bbbbbb">
</span><span style="color: #008800; font-weight: bold">UNIQUE</span>,
<span style="color: #bbbbbb"> </span>Quantity<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">NOT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">NULL</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">CHECK</span><span style="color: #bbbbbb"> </span>(Quantity<span style="color: #bbbbbb"> </span><span
style="color: #333333">>=</span><span style="color: #bbbbbb"> </span><span style="color: #0000DD; font-weight:
bold">0</span>)
);

<span style="color: #888888">-- Table for storing member details</span>


<span style="color: #008800; font-weight: bold">CREATE</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">TABLE</span><span style="color: #bbbbbb"> </span>Members<span
style="color: #bbbbbb"> </span>(
<span style="color: #bbbbbb"> </span>MemberID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">PRIMARY</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">KEY</span><span style="color: #bbbbbb"> </span>AUTO_INCREMENT,
<span style="color: #bbbbbb"> </span>Name<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">255</span>)<span style="color:
#bbbbbb"> </span><span style="color: #008800; font-weight: bold">NOT</span><span style="color: #bbbbbb">
</span><span style="color: #008800; font-weight: bold">NULL</span>,
<span style="color: #bbbbbb"> </span>Email<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">255</span>)<span style="color:
#bbbbbb"> </span><span style="color: #008800; font-weight: bold">UNIQUE</span>,
<span style="color: #bbbbbb"> </span>Phone<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">15</span>),
<span style="color: #bbbbbb"> </span>Address<span style="color: #bbbbbb"> </span><span style="color:
#007020">TEXT</span>,
<span style="color: #bbbbbb"> </span>MembershipDate<span style="color: #bbbbbb"> </span><span style="color:
#007020">DATE</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">DEFAULT</span><span style="color: #bbbbbb"> </span>CURDATE()
);
<span style="color: #888888">-- Table for storing library staff details</span>
<span style="color: #008800; font-weight: bold">CREATE</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">TABLE</span><span style="color: #bbbbbb"> </span>Staff<span
style="color: #bbbbbb"> </span>(
<span style="color: #bbbbbb"> </span>StaffID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">PRIMARY</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">KEY</span><span style="color: #bbbbbb"> </span>AUTO_INCREMENT,
<span style="color: #bbbbbb"> </span>Name<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">255</span>)<span style="color:
#bbbbbb"> </span><span style="color: #008800; font-weight: bold">NOT</span><span style="color: #bbbbbb">
</span><span style="color: #008800; font-weight: bold">NULL</span>,
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">Role</span><span
style="color: #bbbbbb"> </span><span style="color: #007020">VARCHAR</span>(<span style="color: #0000DD;
font-weight: bold">50</span>),
<span style="color: #bbbbbb"> </span>Email<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">255</span>)<span style="color:
#bbbbbb"> </span><span style="color: #008800; font-weight: bold">UNIQUE</span>,
<span style="color: #bbbbbb"> </span>Phone<span style="color: #bbbbbb"> </span><span style="color:
#007020">VARCHAR</span>(<span style="color: #0000DD; font-weight: bold">15</span>)
);

<span style="color: #888888">-- Table for storing book transactions (issue/return)</span>


<span style="color: #008800; font-weight: bold">CREATE</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">TABLE</span><span style="color: #bbbbbb"> </span>Transactions<span
style="color: #bbbbbb"> </span>(
<span style="color: #bbbbbb"> </span>TransactionID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">PRIMARY</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">KEY</span><span style="color: #bbbbbb"> </span>AUTO_INCREMENT,
<span style="color: #bbbbbb"> </span>MemberID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span>,
<span style="color: #bbbbbb"> </span>BookID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span>,
<span style="color: #bbbbbb"> </span>IssueDate<span style="color: #bbbbbb"> </span><span style="color:
#007020">DATE</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">DEFAULT</span><span style="color: #bbbbbb"> </span>CURDATE(),
<span style="color: #bbbbbb"> </span>DueDate<span style="color: #bbbbbb"> </span><span style="color:
#007020">DATE</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">DEFAULT</span><span style="color: #bbbbbb"> </span>(DATE_ADD(CURDATE(),<span style="color: #bbbbbb">
</span><span style="color: #007020">INTERVAL</span><span style="color: #bbbbbb"> </span><span style="color:
#0000DD; font-weight: bold">14</span><span style="color: #bbbbbb"> </span><span style="color: #008800;
font-weight: bold">DAY</span>)),
<span style="color: #bbbbbb"> </span>ReturnDate<span style="color: #bbbbbb"> </span><span style="color:
#007020">DATE</span>,
<span style="color: #bbbbbb"> </span>Fine<span style="color: #bbbbbb"> </span><span style="color:
#007020">DECIMAL</span>(<span style="color: #0000DD; font-weight: bold">5</span>,<span style="color: #0000DD;
font-weight: bold">2</span>)<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">DEFAULT</span><span style="color: #bbbbbb"> </span><span style="color: #0000DD; font-weight:
bold">0</span>,
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">FOREIGN</span><span
style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">KEY</span><span style="color:
#bbbbbb"> </span>(MemberID)<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">REFERENCES</span><span style="color: #bbbbbb"> </span>Members(MemberID),
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">FOREIGN</span><span
style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">KEY</span><span style="color:
#bbbbbb"> </span>(BookID)<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">REFERENCES</span><span style="color: #bbbbbb"> </span>Books(BookID)
);

<span style="color: #888888">-- Table for tracking fines</span>


<span style="color: #008800; font-weight: bold">CREATE</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">TABLE</span><span style="color: #bbbbbb"> </span>Fines<span
style="color: #bbbbbb"> </span>(
<span style="color: #bbbbbb"> </span>FineID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">PRIMARY</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">KEY</span><span style="color: #bbbbbb"> </span>AUTO_INCREMENT,
<span style="color: #bbbbbb"> </span>MemberID<span style="color: #bbbbbb"> </span><span style="color:
#007020">INT</span>,
<span style="color: #bbbbbb"> </span>Amount<span style="color: #bbbbbb"> </span><span style="color:
#007020">DECIMAL</span>(<span style="color: #0000DD; font-weight: bold">5</span>,<span style="color: #0000DD;
font-weight: bold">2</span>)<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">NOT</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">NULL</span>,
<span style="color: #bbbbbb"> </span>Status<span style="color: #bbbbbb"> </span>ENUM(<span
style="background-color: #fff0f0">'Unpaid'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'Paid'</span>)<span style="color: #bbbbbb"> </span><span style="color:
#008800; font-weight: bold">DEFAULT</span><span style="color: #bbbbbb"> </span><span style="background-color:
#fff0f0">'Unpaid'</span>,
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">FOREIGN</span><span
style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">KEY</span><span style="color:
#bbbbbb"> </span>(MemberID)<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">REFERENCES</span><span style="color: #bbbbbb"> </span>Members(MemberID)
);

<span style="color: #888888">-- Sample Data Insertion</span>


<span style="color: #008800; font-weight: bold">INSERT</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">INTO</span><span style="color: #bbbbbb"> </span>Books<span
style="color: #bbbbbb"> </span>(Title,<span style="color: #bbbbbb"> </span>Author,<span style="color: #bbbbbb">
</span>Publisher,<span style="color: #bbbbbb"> </span>YearPublished,<span style="color: #bbbbbb">
</span>ISBN,<span style="color: #bbbbbb"> </span>Quantity)<span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">VALUES</span>
(<span style="background-color: #fff0f0">'The Great Gatsby'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'F. Scott Fitzgerald'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'Scribner'</span>,<span style="color: #bbbbbb"> </span><span style="color:
#0000DD; font-weight: bold">1925</span>,<span style="color: #bbbbbb"> </span><span style="background-color:
#fff0f0">'9780743273565'</span>,<span style="color: #bbbbbb"> </span><span style="color: #0000DD; font-weight:
bold">5</span>),
(<span style="background-color: #fff0f0">'1984'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'George Orwell'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'Secker & Warburg'</span>,<span style="color: #bbbbbb"> </span><span
style="color: #0000DD; font-weight: bold">1949</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'9780451524935'</span>,<span style="color: #bbbbbb"> </span><span
style="color: #0000DD; font-weight: bold">3</span>);

<span style="color: #008800; font-weight: bold">INSERT</span><span style="color: #bbbbbb"> </span><span


style="color: #008800; font-weight: bold">INTO</span><span style="color: #bbbbbb"> </span>Members<span
style="color: #bbbbbb"> </span>(Name,<span style="color: #bbbbbb"> </span>Email,<span style="color: #bbbbbb">
</span>Phone,<span style="color: #bbbbbb"> </span>Address)<span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">VALUES</span>
(<span style="background-color: #fff0f0">'John Doe'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'[email protected]'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'1234567890'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'123 Main St'</span>),
(<span style="background-color: #fff0f0">'Jane Smith'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'[email protected]'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'9876543210'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'456 Oak St'</span>);

<span style="color: #008800; font-weight: bold">INSERT</span><span style="color: #bbbbbb"> </span><span


style="color: #008800; font-weight: bold">INTO</span><span style="color: #bbbbbb"> </span>Staff<span
style="color: #bbbbbb"> </span>(Name,<span style="color: #bbbbbb"> </span><span style="color: #008800;
font-weight: bold">Role</span>,<span style="color: #bbbbbb"> </span>Email,<span style="color: #bbbbbb">
</span>Phone)<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">VALUES</span>
(<span style="background-color: #fff0f0">'Alice Brown'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'Librarian'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'[email protected]'</span>,<span style="color: #bbbbbb"> </span><span
style="background-color: #fff0f0">'1122334455'</span>);

<span style="color: #888888">-- Query to Issue a Book</span>


<span style="color: #008800; font-weight: bold">INSERT</span><span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">INTO</span><span style="color: #bbbbbb"> </span>Transactions<span
style="color: #bbbbbb"> </span>(MemberID,<span style="color: #bbbbbb"> </span>BookID)<span style="color:
#bbbbbb"> </span><span style="color: #008800; font-weight: bold">VALUES</span><span style="color: #bbbbbb">
</span>(<span style="color: #0000DD; font-weight: bold">1</span>,<span style="color: #bbbbbb"> </span><span
style="color: #0000DD; font-weight: bold">1</span>);

<span style="color: #888888">-- Query to Return a Book (including fine calculation)</span>


<span style="color: #008800; font-weight: bold">UPDATE</span><span style="color: #bbbbbb">
</span>Transactions<span style="color: #bbbbbb"> </span>
<span style="color: #008800; font-weight: bold">SET</span><span style="color: #bbbbbb"> </span>ReturnDate<span
style="color: #bbbbbb"> </span><span style="color: #333333">=</span><span style="color: #bbbbbb">
</span>CURDATE(),<span style="color: #bbbbbb"> </span>Fine<span style="color: #bbbbbb"> </span><span
style="color: #333333">=</span><span style="color: #bbbbbb"> </span>
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">CASE</span><span
style="color: #bbbbbb"> </span>
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">WHEN</span><span
style="color: #bbbbbb"> </span>CURDATE()<span style="color: #bbbbbb"> </span><span style="color:
#333333">></span><span style="color: #bbbbbb"> </span>DueDate<span style="color: #bbbbbb"> </span><span
style="color: #008800; font-weight: bold">THEN</span><span style="color: #bbbbbb">
</span>DATEDIFF(CURDATE(),<span style="color: #bbbbbb"> </span>DueDate)<span style="color: #bbbbbb">
</span><span style="color: #333333">*</span><span style="color: #bbbbbb"> </span><span style="color: #0000DD;
font-weight: bold">5</span><span style="color: #bbbbbb"> </span>
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">ELSE</span><span
style="color: #bbbbbb"> </span><span style="color: #0000DD; font-weight: bold">0</span><span style="color:
#bbbbbb"> </span>
<span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight: bold">END</span><span
style="color: #bbbbbb"> </span>
<span style="color: #008800; font-weight: bold">WHERE</span><span style="color: #bbbbbb">
</span>TransactionID<span style="color: #bbbbbb"> </span><span style="color: #333333">=</span><span
style="color: #bbbbbb"> </span><span style="color: #0000DD; font-weight: bold">1</span>;

<span style="color: #888888">-- Output Simulation</span>


<span style="color: #008800; font-weight: bold">SELECT</span><span style="color: #bbbbbb"> </span><span
style="color: #333333">*</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">FROM</span><span style="color: #bbbbbb"> </span>Books;
<span style="color: #008800; font-weight: bold">SELECT</span><span style="color: #bbbbbb"> </span><span
style="color: #333333">*</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">FROM</span><span style="color: #bbbbbb"> </span>Members;
<span style="color: #008800; font-weight: bold">SELECT</span><span style="color: #bbbbbb"> </span><span
style="color: #333333">*</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">FROM</span><span style="color: #bbbbbb"> </span>Staff;
<span style="color: #008800; font-weight: bold">SELECT</span><span style="color: #bbbbbb"> </span><span
style="color: #333333">*</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">FROM</span><span style="color: #bbbbbb"> </span>Transactions;
<span style="color: #008800; font-weight: bold">SELECT</span><span style="color: #bbbbbb"> </span><span
style="color: #333333">*</span><span style="color: #bbbbbb"> </span><span style="color: #008800; font-weight:
bold">FROM</span><span style="color: #bbbbbb"> </span>Fines;

You might also like