在Python中,可以使用多種方法來(lái)操作數(shù)據(jù)庫(kù)并執(zhí)行查詢。以下是使用sqlite3庫(kù)(Python內(nèi)置的數(shù)據(jù)庫(kù)連接庫(kù))進(jìn)行數(shù)據(jù)庫(kù)操作和查詢的示例:
首先,確保已經(jīng)安裝了sqlite3庫(kù)。在命令行中輸入以下命令來(lái)安裝:
pip install pysqlite3
然后,創(chuàng)建一個(gè)名為test.db的數(shù)據(jù)庫(kù)文件,并在其中創(chuàng)建一個(gè)名為employees的表:
import sqlite3
# 連接到數(shù)據(jù)庫(kù),如果不存在則創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù)文件
conn = sqlite3.connect('test.db')
cursor = conn.cursor()
# 創(chuàng)建一個(gè)名為employees的表
cursor.execute('''
CREATE TABLE IF NOT EXISTS employees (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER,
department TEXT
)
''')
# 插入一些示例數(shù)據(jù)
employees_data = [
('Alice', 30, 'HR'),
('Bob', 25, 'IT'),
('Charlie', 35, 'Finance')
]
cursor.executemany('INSERT INTO employees (name, age, department) VALUES (?, ?, ?)', employees_data)
conn.commit()
接下來(lái),執(zhí)行查詢操作:
# 查詢所有員工信息
cursor.execute('SELECT * FROM employees')
all_employees = cursor.fetchall()
print("所有員工信息:")
for employee in all_employees:
print(employee)
# 查詢特定條件的員工信息
cursor.execute('SELECT * FROM employees WHERE age > ?', (30,))
older_employees = cursor.fetchall()
print("\n年齡大于30歲的員工:")
for employee in older_employees:
print(employee)
最后,關(guān)閉數(shù)據(jù)庫(kù)連接:
cursor.close()
conn.close()
這個(gè)示例展示了如何使用Python的sqlite3庫(kù)連接到SQLite數(shù)據(jù)庫(kù),創(chuàng)建表,插入數(shù)據(jù)以及執(zhí)行查詢操作。對(duì)于其他數(shù)據(jù)庫(kù),如MySQL、PostgreSQL等,可以使用相應(yīng)的Python庫(kù)(如pymysql、psycopg2等)來(lái)實(shí)現(xiàn)類似的功能。