A simple Library Management System built with Python and Tkinter, using SQLite for database management. The system allows users to manage books, including adding new books, viewing and updating book details, tracking the status of books (available or issued), and deleting books or the entire inventory.
Features
- Add new books to the library with details such as book name, book ID, author name, and book status (Available or Issued).
- View existing records of books.
- Update book details, including availability and card ID of the issuer.
- Change availability: Mark a book as Issued or Available and track the card ID of the issuer.
- Delete books or delete the entire inventory.
- Database: Uses an SQLite database (
library.db
) to store the records.
Technologies Used
- Python: The core programming language.
- Tkinter: For building the GUI.
- SQLite: For managing the database.
Installation
- Clone the repository to your local machine:
git clone https://github.com/shiva0909122/Library-Management-System.git
- Change directory to the project folder:
cd Library-Management-System
-
Ensure you have Python installed on your machine. If not, download and install it from python.org.
- Install Tkinter (if not already installed with Python):
- On Windows, Tkinter is usually included with Python by default.
- On Linux, you can install Tkinter using:
sudo apt-get install python3-tk
- Run the Python script:
Usage
- Add Book: Fill in the form with book details and click Add new record.
- View Book: Select a book record from the table to view and modify.
- Update Book: After selecting a record, click Update book details to make changes.
- Change Availability: Use this to mark a book as Issued or Available.
- Delete Book: Select a record and click Delete book record to remove it.
- Delete Full Inventory: Remove all records from the database with this option.
Database Schema
The database (library.db
) uses the following table structure:
Output

Library Table:
- BK_NAME (TEXT): The name of the book.
- BK_ID (TEXT, PRIMARY KEY): A unique identifier for each book.
- AUTHOR_NAME (TEXT): The name of the book’s author.
- BK_STATUS (TEXT): The current status of the book (
Available
or Issued
).
- CARD_ID (TEXT): The ID of the cardholder (if the book is issued).