sqlite 数据库操作示例 (增删改查 + 索引 + 事务) 2024 最全攻略!
增操作示例 —— 添加数据到 sqlite 数据库
在 sqlite 中添加数据非常简单。我们需要创建一个数据库连接,并打开一个数据库文件。使用 SQL 语句插入数据。以下是一个示例代码:
import sqlite3
# 创建数据库连接
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 插入数据
cursor.execute("INSERT INTO students (name, age) VALUES ('Alice', 20)")
# 提交事务
conn.commit()
# 关闭连接
conn.close()
删操作示例 —— 从 sqlite 数据库中删除数据
删除 sqlite 数据库中的数据也很容易。同样,我们需要先创建数据库连接和游标,使用 SQL 语句删除数据。以下是一个示例:
import sqlite3
# 创建数据库连接
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 删除数据
cursor.execute("DELETE FROM students WHERE age > 18")
# 提交事务
conn.commit()
# 关闭连接
conn.close()
改操作示例 —— 更新 sqlite 数据库中的数据
更新 sqlite 数据库中的数据需要使用 SQL 的 UPDATE 语句。以下是一个示例代码:
import sqlite3
# 创建数据库连接
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 更新数据
cursor.execute("UPDATE students SET age = 21 WHERE name = 'Alice'")
# 提交事务
conn.commit()
# 关闭连接
conn.close()
查操作示例 —— 从 sqlite 数据库中查询数据
查询 sqlite 数据库中的数据是最常见的操作之一。我们可以使用 SQL 的 SELECT 语句来查询数据。以下是一个示例:
import sqlite3
# 创建数据库连接
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 查询数据
cursor.execute("SELECT FROM students")
rows = cursor.fetchall()
for row in rows:
print(row)
# 关闭连接
conn.close()
索引创建示例 —— 为 sqlite 数据库表创建索引
创建索引可以提高数据库查询的性能。在 sqlite 中,我们可以使用 CREATE INDEX 语句来创建索引。以下是一个示例:
import sqlite3
# 创建数据库连接
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 创建索引
cursor.execute("CREATE INDEX idx_name ON students (name)")
# 提交事务
conn.commit()
# 关闭连接
conn.close()
事务处理示例 —— 在 sqlite 数据库中使用事务
事务处理可以确保数据库操作的原子性和一致性。在 sqlite 中,我们可以使用 BEGIN、COMMIT 和 ROLLBACK 语句来管理事务。以下是一个示例:
import sqlite3
# 创建数据库连接
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
try:
# 开始事务
conn.execute("BEGIN")
# 插入数据
cursor.execute("INSERT INTO students (name, age) VALUES ('Bob', 22)")
# 提交事务
conn.commit()
except Exception as e:
# 回滚事务
conn.rollback()
finally:
# 关闭连接
conn.close()
通过以上示例,我们详细介绍了 sqlite 数据库的增删改查、索引创建和事务处理等操作。这些操作是 sqlite 数据库开发中非常基础和重要的部分,掌握它们将有助于你更好地使用 sqlite 数据库。
以下是提炼的 3 - 4 个问题: 1. 如何在 sqlite 数据库中添加数据? 2. 怎样在 sqlite 数据库中删除数据? 3. 如何更新 sqlite 数据库中的数据? 4. 怎样为 sqlite 数据库表创建索引?