کار با SQLite در پایتون

SQL مخفف “Structured Query Language” است و زبان اصلی است که پایگاه داده بزرگ از آن استفاده می کنند. SQLite نرم افزاری رایگان است که می تواند به عنوان پایگاه داده SQL مورد استفاده قرار گیرد. آخرین نسخه نرم افزار را می توانید از سایت www.sqlite.org دانلود کنید.

در این بخش ما تنها توابع SQLite را بررسی می کنیم پس اگر آشنایی مقدماتی درباره SQL دارید در ادامه با ما همراه باشید

 


این مطالب نیز می تواند برایتان مفید باشد


یک پروژه جدید ایجاد و سپس مرحله به مرحله دستورات را با هم اجرا می کنیم

import sqlite3

در ابتدای کار ما باید به برنامه پایتون اجازه دسترسی به کتابخانه SQLite3 را بدهیم

with sqlite3.connect(“company.db”) as db:
cursor=db.cursor()

این دستور به دیتابیس متصل می شود. اگر چنین دیتابیسی وجود نداشته باشد، یکی پایگاه داده جدید ایجاد می کند و این فایل در همان قسمتی ذخیره می شود که فایل برنامه  قرار دارد.

cursor.execute(“““CREATE TABLE IF NOT EXISTS employees(
id integer PRIMARY KEY,
name text NOT NULL,
dept text NOT NULL,
salary integer);”””)

جدولی به نام کارمندان ایجاد می کند که دارای چهار فیلد (id، name، dept و salary) است. نوع داده ها و primary key حتما باید برای فیلدها مشخص باشند.

 

cursor.execute(“““INSERT INTO employees(id,name,dept,salary)
VALUES(“۱”,”Bob”,”Sales”,”۲۵۰۰۰”)”””)
db.commit()

برای وارد کردن اطلاعات در جدول از INSERT  استفاده می کنیم و در وارد کردن اطلاعات باید حتما به نوع داده ای که در مرحله قبل انتخاب کردیم دقت کنیم تا با خطا مواجه نشویم و پس از وارد کردن این اطلاعات با استفاده commit آن را تایید نماییم.

 

برای نمونه می خواهیم این اطلاعات را از کاربر دریافت نماییم و در دیتابیس ذخیره کنیم

newID = input(“Enter ID number: ”)
newame = input(“Enter name: ”)
newDept = input(“Enter department: ”)
newSalary = input(“Enter salary: ”)
cursor.execute(“““INSERT INTO employees(id,name,dept,salary)
VALUES(?,?,?,?)”””,(newID,newName,newDept,newSalary))
db.commit()

برای خواندن و نمایش اطلاعات باید از دستور زیر استفاده کنیم و تمام اطلاعات درون جدولی که با نام employees قرار دادیم را به ما نمایش می دهد.

cursor.execute(“SELECT * FROM employees”)
print(cursor.fetchall())

 

باید فراموش نکنیم که پس از پایان کار و اجرای دستورات مورد نظر دیتابیس را بسته و خارج شویم و این کار به سادگی انجام می گیرد.

db.close()

اگز بخواهیم اطلاعات نوشته شده در table را به صورت خط های جداگانه مشاهده کنیم از روش زیر استفاده می کنیم

cursor.execute(“SELECT * FROM employees”)
for x in cursor.fetchall():
print(x)

در این قسمت با روش های مختلف اطلاعاتی را که می خواهیم انتخاب و نمایش می دهیم

cursor.execute(“SELECT * FROM employees ORDER BY name”)
for x in cursor.fetchall():
print(x)

cursor.execute(“SELECT * FROM employees WHERE salary>20000”)

cursor.execute(“SELECT * FROM employees WHERE dept=‘Sales’”)

cursor.execute(“““SELECT employees.id,employees.name,dept.manager
FROM employees,dept WHERE employees.dept=dept.dept
AND employees.salary >20000”””)

cursor.execute(“SELECT id,name,salary FROM employees”)

حذف کردن رکورد

cursor.execute(“DELETE employees WHERE id=1”)

تا اینجا با دستورات اصلی کار با دیتابیس و SQLite آشنا شدید و در بخش های بعدی این دستورات را در برنامه های مختلف استفاده خواهیم کرد.

 


همچنین در ادامه می توانید مطالعه کنید

 


محمد صداقتی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *