در این بخش از آموزش قصد داریم که نحوه کار کردن با این SQLite را در پایتون با استفاده از یک مثال ساده شروع کنیم. قبل از هر چیز بهترین خبری که می‌توان داد این است که این بسته نیازی به نصب ندارد و از قبل در پایتون گنجانده شده است.

ما در این مثال قصد داریم که یک دیتابیس برای کتابهایمان ایجاد کنیم.

پس به طور مستقیم sqlite3 را به برنامه وارد می‌کنیم.

import sqlite3

حالا باید یک کانکشن به دیتابیس اضافه کنیم.

connection = sqlite3.connect('library.db')

دقت کنید که لازم نیست از قبل دیتابیس را ساخته باشید. حالا باید دستورهای اولیه را به sqlite بدهیم تا یک جدول در دیتابیس ایجاد کند و یژگی‌های مورد نظر را به آن اضافه نماید.

connection.execute('''
    CREATE TABLE IF NOT EXISTS books(
                   id INTEGER PRIMARY KEY AUTOINCREMENT,
                   title TEXT,
                   author TEXT,
                   genre TEXT,
                   year INTEGER,
                   pages INTEGER
                   )
''')

اولین خط دستور این است که اگر جدولی با نام  books در دیتابیس وجود ندارد آن را ایجاد کند.

سپس کلید اولیه را با نام id ایجاد می‌کنیم که یک عدد صحیح است.

در خطوط بعد موارد مورد نیاز را به جدول اضافه می کنیم. این موارد عبارت هستند از عنوان کتاب، نویسنده، ژانر، سال و تعداد صفحات.

اما اگر دقت کنید دیتابیس در پوشه برنامه شما ایجاد نشده است. بلکه در مسیر پیش فرض ایجاد گشته است.

برای رفع این مشکل برنامه را به صورت زیر تغییر می‌دهیم:

import os
import sqlite3

# Get the current directory where your script is located
current_directory = os.path.dirname(os.path.abspath(__file__))
db_path = os.path.join(current_directory, 'library.db')

connection = sqlite3.connect(db_path)

connection.execute('''
    CREATE TABLE IF NOT EXISTS books(
                   id INTEGER PRIMARY KEY AUTOINCREMENT,
                   title TEXT,
                   author TEXT,
                   genre TEXT,
                   year INTEGER,
                   pages INTEGER
                   )
''')

# Write data into the file
connection.commit()

# Close the database
connection.close()

با اجرای برنامه خواهید دید که فایل دیتابیس با نام library.db  در پوشه برنامه شما ایجاد شده است.

حالا که دیتابیس ما ایجاد شده است وقت آن است که داده‌های مورد نظرمان را به آن اضافه کنیم.

ابتدا اطلاعات چند کتاب را در یک لیست ذخیره می کنیم. قطعه کد زیر را بالای دستور connection.commit می نویسیم:

my_books = [
    ('Getting started Raspberry Pi Pico in micropython', 'Ali Habibnia', 'Electronics', 1402, 130),
    ('IMPRACTICAL PYTHON PROJECTS', 'Lee Vaughan', 'Programming', 2019, 478),
    ('Dastane Yek Rooh', 'C.Shamissa', 'Literature', 1993, 341)
]

سپس با استفاده از دستور زیر اطلاعات این لیست را به جدول اضافه می کنیم:

connection.executemany('INSERT INTO books(title, author, genre, year, pages) VALUES(?, ?, ?, ?, ?)', my_books)

برای اینکه ببینیم اطلاعات در جدول ذخیره شده است یا خیر می توانیم در برنامه پایتون دستورات مربوط به خواندن از دیتابیس را اضافه کنیم. اما بیایید با یک ابازر دیگر آشنا شویم. برای مشاهده محتویات یک دیتابیس sqlite می توانیم نرم افزار DB Browser for SQLite را از لینک زیر دانلود و نصب کنیم:


https://sqlitebrowser.org/dl/

این نرم افزار بسیار ساده و سبک است و کار کردن با آن راحت است. دیتابیس را با این نرم افزار باز کنید و جدول را ببینید:

DB Browser for SQLite

برای مشاهده محتویات جدول روی لبه Browse Data کلیک کنید:

DB Browser for SQLite
جستجوی داده ها در دیتابیس sqlite

همان طور که می بینید محتویات جدول مطابق داده هایی که وارد کرده بودیم قابل مشاهده هستند.

یک نکته مهم که باید آن را رعایت کنید این است که در پایان برنامه کانکشن را ببندید تا سایر برنامه ها امکاندسترسی به دیتابیس را داشته باشند:

connection.close()

در قسمت بعد با چگونگی استخراج اطلاعات موجود در یک دیتابیس sqlite توسط پایتون آشنا خواهیم شد.