sqlite 驱动
SQLite 是一个轻量级的嵌入式数据库,由于其简单易用、高效可靠等特点,在移动设备和嵌入式设备上得到了广泛的应用。为了使用 SQLite 数据库,我们需要使用相应的驱动程序。
本文将详细介绍如何使用 Python 中的 sqlite3 模块来驱动 SQLite 数据库,包括连接数据库、创建表、插入数据、查询数据、更新数据、删除数据等操作。
连接数据库
首先,我们需要创建一个 SQLite 数据库文件。可以使用 SQLite 提供的命令行工具,也可以使用 SQLite 提供的图形化界面工具(如 SQLiteStudio)来创建和管理数据库。
Python 中使用 sqlite3 模块来连接 SQLite 数据库。以下是连接数据库的代码示例:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
上面的代码中,我们使用 connect
函数来连接到一个名为 example.db
的数据库文件,如果该数据库文件不存在,将会自动创建。如果该数据库文件存在,将会打开该文件进行连接。
创建表
在连接数据库成功之后,我们可以执行 SQL 语句来创建表格。以下是创建表格的代码示例:
# 创建一个名为 "users" 的表
conn.execute('''CREATE TABLE users
(id INT PRIMARY KEY NOT NULL,
name TEXT NOT NULL,
age INT NOT NULL,
email TEXT);''')
上面的代码中,我们使用 execute
方法执行了一条 SQL 语句,该语句用于在数据库中创建了一个名为 users
的表格。表格包括了 id
、name
、age
、email
四个字段,其中 id
是主键,并且不允许为空。
插入数据
表格创建完成后,我们可以使用 execute
方法来插入数据。以下是插入数据的代码示例:
# 插入一条数据
conn.execute("INSERT INTO users (id, name, age, email) \
VALUES (1, 'Alice', 25, 'alice@example.com')")
# 提交事务
conn.commit()
上面的代码中,我们插入了一条数据,数据包括了 id
为 1,name
为 ‘Alice’,age
为 25,email
为 ‘alice@example.com’。然后使用 commit
方法提交事务。
查询数据
插入数据后,我们可以使用 execute
方法来查询数据。以下是查询数据的代码示例:
# 查询所有数据
cursor = conn.execute("SELECT * FROM users")
for row in cursor:
print(f"id = {row[0]}, name = {row[1]}, age = {row[2]}, email = {row[3]}")
上面的代码中,我们使用 execute
方法执行了一条 SQL 语句,该语句用于查询表格中的所有数据。然后使用 execute
方法返回一个 cursor 对象,使用该对象的遍历方式来输出查询结果。
更新数据
在插入数据后,如果我们需要更新数据,可以使用 execute
方法来执行更新操作。以下是更新数据的代码示例:
# 更新数据
conn.execute("UPDATE users SET age = 26 WHERE id = 1")
conn.commit()
上面的代码中,我们使用 execute
方法执行了一条 SQL 语句,该语句用于更新 users
表格中 id
为 1 的数据的 age
字段为 26。然后使用 commit
方法提交事务。
删除数据
如果我们需要删除数据,可以使用 execute
方法来执行删除操作。以下是删除数据的代码示例:
# 删除数据
conn.execute("DELETE FROM users WHERE id = 1")
conn.commit()
上面的代码中,我们使用 execute
方法执行了一条 SQL 语句,该语句用于删除 users
表格中 id
为 1 的数据。然后使用 commit
方法提交事务。
断开连接
在完成所有数据库操作后,我们需要断开与 SQLite 数据库的连接。以下是断开连接的代码示例:
# 断开与数据库的连接
conn.close()
上面的代码中,我们使用 close
方法来断开与数据库的连接。这是一个很重要的步骤,以确保释放资源并且不引起任何问题。
小结
本文详细介绍了如何使用 Python 中的 sqlite3 模块来驱动 SQLite 数据库。涵盖了连接数据库、创建表、插入数据、查询数据、更新数据、删除数据等操作。
SQLite 是一款简单、轻量级的数据库引擎,适用于嵌入式设备以及轻量级的应用场景。通过在 Python 中使用 sqlite3 模块,我们可以方便地进行数据库操作。