


Membina Pengurus Perpustakaan SQLite Mudah dalam Python
Membina Pengurus Perpustakaan SQLite Mudah dalam Python
Mengurus data dengan cekap ialah bahagian penting dalam mana-mana projek, dan SQLite menjadikan tugas ini mudah dan ringan. Dalam tutorial ini, kami akan membina aplikasi Python kecil untuk mengurus pangkalan data perpustakaan, membolehkan anda menambah dan mendapatkan buku dengan usaha yang minimum.
Menjelang akhir artikel ini, anda akan tahu cara:
- Buat pangkalan data dan jadual SQLite.
- Sisipkan rekod sambil menghalang pendua.
- Dapatkan semula data berdasarkan kriteria tertentu.
1. Mencipta Pangkalan Data dan Jadual
Mari mulakan dengan mencipta fail pangkalan data SQLite kami dan mentakrifkan jadual buku. Setiap buku akan mempunyai medan untuk tajuk, pengarang, ISBN, tarikh penerbitan dan genrenya.
import sqlite3 import os def create_library_database(): """Creates the library database if it doesn't already exist.""" db_name = "library.db" if not os.path.exists(db_name): print(f"Creating database: {db_name}") conn = sqlite3.connect(db_name) cursor = conn.cursor() cursor.execute(''' CREATE TABLE IF NOT EXISTS books ( id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT, author TEXT, isbn TEXT UNIQUE, published_date DATE, genre TEXT ) ''') conn.commit() conn.close() else: print(f"Database already exists: {db_name}")
Jalankan fungsi ini untuk memulakan pangkalan data:
create_library_database()
Ini akan mencipta fail library.db dalam direktori projek anda, yang mengandungi jadual buku dengan medan yang ditentukan.
- Memasukkan Buku ke dalam Pangkalan Data
Untuk memasukkan buku, kami ingin memastikan penyertaan pendua (berdasarkan medan isbn) dielakkan. Daripada menyemak pendua secara manual, kami akan menggunakan pernyataan INSERT OR IGNORE SQLite.
Berikut ialah fungsi untuk menambah buku:
def insert_book(book): """ Inserts a book into the database. If a book with the same ISBN already exists, the insertion is ignored. """ conn = sqlite3.connect("library.db") cursor = conn.cursor() try: # Insert the book. Ignore the insertion if the ISBN already exists. cursor.execute(''' INSERT OR IGNORE INTO books (title, author, isbn, published_date, genre) VALUES (?, ?, ?, ?, ?) ''', (book["title"], book["author"], book["isbn"], book["published_date"], book["genre"])) conn.commit() if cursor.rowcount == 0: print(f"The book with ISBN '{book['isbn']}' already exists in the database.") else: print(f"Book inserted: {book['title']} by {book['author']}") except sqlite3.Error as e: print(f"Database error: {e}") finally: conn.close()
Fungsi ini menggunakan penyataan INSERT OR IGNORE SQL untuk memastikan entri pendua dilangkau dengan cekap.
3. Menambah Beberapa Buku
Mari kita uji fungsi insert_book dengan menambahkan beberapa buku pada perpustakaan kami.
books = [ { "title": "To Kill a Mockingbird", "author": "Harper Lee", "isbn": "9780061120084", "published_date": "1960-07-11", "genre": "Fiction" }, { "title": "1984", "author": "George Orwell", "isbn": "9780451524935", "published_date": "1949-06-08", "genre": "Dystopian" }, { "title": "Pride and Prejudice", "author": "Jane Austen", "isbn": "9781503290563", "published_date": "1813-01-28", "genre": "Romance" } ] for book in books: insert_book(book)
Apabila anda menjalankan kod di atas, buku akan ditambahkan pada pangkalan data. Jika anda menjalankannya semula, anda akan melihat mesej seperti:
The book with ISBN '9780061120084' already exists in the database. The book with ISBN '9780451524935' already exists in the database. The book with ISBN '9781503290563' already exists in the database.
4. Mendapatkan Buku
Anda boleh mendapatkan semula data dengan mudah dengan menanyakan pangkalan data. Contohnya, untuk mengambil semua buku dalam perpustakaan:
def fetch_all_books(): conn = sqlite3.connect("library.db") cursor = conn.cursor() cursor.execute("SELECT * FROM books") rows = cursor.fetchall() conn.close() return rows books = fetch_all_books() for book in books: print(book)
Kesimpulan
Dengan hanya beberapa baris Python, anda kini mempunyai pengurus perpustakaan berfungsi yang boleh memasukkan buku sambil menghalang pendua dan mendapatkan semula rekod dengan mudah. INSERT OR IGNORE SQLite ialah ciri berkuasa yang memudahkan pengendalian kekangan, menjadikan kod anda lebih ringkas dan cekap.
Jangan ragu untuk mengembangkan projek ini dengan ciri seperti:
- Mencari buku mengikut tajuk atau pengarang.
- Mengemas kini maklumat buku.
- Memadamkan buku.
Apa yang akan anda bina seterusnya? ?
Atas ialah kandungan terperinci Membina Pengurus Perpustakaan SQLite Mudah dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Python sesuai untuk sains data, pembangunan web dan tugas automasi, manakala C sesuai untuk pengaturcaraan sistem, pembangunan permainan dan sistem tertanam. Python terkenal dengan kesederhanaan dan ekosistem yang kuat, manakala C dikenali dengan keupayaan kawalan dan keupayaan kawalan yang mendasari.

Python cemerlang dalam permainan dan pembangunan GUI. 1) Pembangunan permainan menggunakan pygame, menyediakan lukisan, audio dan fungsi lain, yang sesuai untuk membuat permainan 2D. 2) Pembangunan GUI boleh memilih tkinter atau pyqt. TKInter adalah mudah dan mudah digunakan, PYQT mempunyai fungsi yang kaya dan sesuai untuk pembangunan profesional.

Anda boleh mempelajari konsep pengaturcaraan asas dan kemahiran Python dalam masa 2 jam. 1. Belajar Pembolehubah dan Jenis Data, 2.

Anda boleh mempelajari asas -asas Python dalam masa dua jam. 1. Belajar pembolehubah dan jenis data, 2. Struktur kawalan induk seperti jika pernyataan dan gelung, 3 memahami definisi dan penggunaan fungsi. Ini akan membantu anda mula menulis program python mudah.

Python lebih mudah dipelajari dan digunakan, manakala C lebih kuat tetapi kompleks. 1. Sintaks Python adalah ringkas dan sesuai untuk pemula. Penaipan dinamik dan pengurusan memori automatik menjadikannya mudah digunakan, tetapi boleh menyebabkan kesilapan runtime. 2.C menyediakan kawalan peringkat rendah dan ciri-ciri canggih, sesuai untuk aplikasi berprestasi tinggi, tetapi mempunyai ambang pembelajaran yang tinggi dan memerlukan memori manual dan pengurusan keselamatan jenis.

Untuk memaksimumkan kecekapan pembelajaran Python dalam masa yang terhad, anda boleh menggunakan modul, masa, dan modul Python. 1. Modul DateTime digunakan untuk merakam dan merancang masa pembelajaran. 2. Modul Masa membantu menetapkan kajian dan masa rehat. 3. Modul Jadual secara automatik mengatur tugas pembelajaran mingguan.

Python digunakan secara meluas dalam bidang pembangunan web, sains data, pembelajaran mesin, automasi dan skrip. 1) Dalam pembangunan web, kerangka Django dan Flask memudahkan proses pembangunan. 2) Dalam bidang sains data dan pembelajaran mesin, numpy, panda, scikit-learn dan perpustakaan tensorflow memberikan sokongan yang kuat. 3) Dari segi automasi dan skrip, Python sesuai untuk tugas -tugas seperti ujian automatik dan pengurusan sistem.

Python cemerlang dalam automasi, skrip, dan pengurusan tugas. 1) Automasi: Sandaran fail direalisasikan melalui perpustakaan standard seperti OS dan Shutil. 2) Penulisan Skrip: Gunakan Perpustakaan Psutil untuk memantau sumber sistem. 3) Pengurusan Tugas: Gunakan perpustakaan jadual untuk menjadualkan tugas. Kemudahan penggunaan Python dan sokongan perpustakaan yang kaya menjadikannya alat pilihan di kawasan ini.
