📅  最后修改于: 2023-12-03 15:22:20.009000             🧑  作者: Mango
在上一篇文章中,我们讨论了如何使用Python和SQLite执行基本的SQL操作。在本文中,我们将继续探讨如何使用Python和SQLite进行更复杂的查询和操作。
要执行SQL查询或操作,首先需要连接到SQLite数据库。在Python中,可以使用SQLite模块的connect()函数来连接到数据库。例如,下面的代码将连接到一个名为"mydatabase.db"的SQLite数据库:
import sqlite3
conn = sqlite3.connect('mydatabase.db')
在SQLite中,可以使用CREATE TABLE语句来创建表。例如,下面的代码将在数据库中创建名为"users"的表:
import sqlite3
conn = sqlite3.connect('mydatabase.db')
c = conn.cursor()
c.execute('''CREATE TABLE users
(id INTEGER PRIMARY KEY ASC, name TEXT, email TEXT)''')
conn.commit()
conn.close()
以上代码中,我们创建了一个名为"users"的表,包含三个字段:id、name和email。id字段是主键,使用INTEGER数据类型,将自动递增。name和email字段均使用TEXT数据类型。
可以使用INSERT INTO语句将数据插入表中。例如,下面的代码将一行数据插入名为"users"的表中:
import sqlite3
conn = sqlite3.connect('mydatabase.db')
c = conn.cursor()
c.execute("INSERT INTO users (name, email) VALUES ('Bob', 'bob@example.com')")
conn.commit()
conn.close()
以上代码中,我们将一行数据插入名为"users"的表中。数据包含两个字段:name和email。id字段将自动递增。
可以使用SELECT语句从表中检索数据。例如,下面的代码将从名为"users"的表中检索所有数据:
import sqlite3
conn = sqlite3.connect('mydatabase.db')
c = conn.cursor()
c.execute("SELECT * FROM users")
rows = c.fetchall()
for row in rows:
print(row)
conn.close()
以上代码中,我们使用SELECT语句从名为"users"的表中检索所有数据,并将结果打印到控制台。
可以使用UPDATE语句更新表中的数据。例如,下面的代码将名为"Bob"的用户的电子邮件地址更新为"bob@example.org":
import sqlite3
conn = sqlite3.connect('mydatabase.db')
c = conn.cursor()
c.execute("UPDATE users SET email='bob@example.org' WHERE name='Bob'")
conn.commit()
conn.close()
以上代码中,我们使用UPDATE语句更新名为"Bob"的用户的电子邮件地址。
可以使用DELETE语句从表中删除数据。例如,下面的代码将名为"Bob"的用户从表中删除:
import sqlite3
conn = sqlite3.connect('mydatabase.db')
c = conn.cursor()
c.execute("DELETE FROM users WHERE name='Bob'")
conn.commit()
conn.close()
以上代码中,我们使用DELETE语句从名为"users"的表中删除名为"Bob"的用户。
在本文中,我们探讨了如何使用Python和SQLite进行更复杂的SQL操作,包括创建表、插入数据、查询数据、更新数据和删除数据。这些基本的操作是任何使用SQLite的应用程序的基础。