• 周二. 2月 7th, 2023

Python 数据库用法详解

城主

12月 30, 2022 ,

Python 的标准库中没有提供数据库访问的接口。但是,Python 有许多第三方库可以提供数据库访问的功能。

一种常见的选择是使用 Python 的 sqlite3 模块来访问 SQLite 数据库。SQLite 是一种轻量级的数据库,可以嵌入在 Python 程序中,不需要单独的数据库服务器。下面是一个简单的例子,展示了如何使用 sqlite3 模块来创建一个数据库并插入一些数据:





import sqlite3

# 连接到 SQLite 数据库
# 数据库文件是 test.db
# 如果文件不存在,会自动在当前目录创建
conn = sqlite3.connect('test.db')

# 创建一个 Cursor
cursor = conn.cursor()

# 执行一条 SQL 语句,创建 users 表
cursor.execute('CREATE TABLE users (id varchar(20) primary key, name varchar(20))')

# 继续执行一条 SQL 语句,插入一条记录
cursor.execute('INSERT INTO users (id, name) values (\'1\', \'Michael\')')

# 通过rowcount获得插入的行数
print(cursor.rowcount)

# 关闭 Cursor
cursor.close()
# 提交事务
conn.commit()
# 关闭 Connection
conn.close()

除了 sqlite3 模块,还有许多其他的 Python 库可以用于访问各种不同的数据库,包括 MySQL、PostgreSQL、Oracle 等等。

当然,也可以使用其他的 Python 库来访问 MySQL 数据库,包括 PyMySQL 和 mysql-connector-python。这些库的用法都与 sqlite3 模块类似,可以使用 connect 函数连接到数据库,然后使用 cursor 对象执行 SQL 语句。

  • PostgreSQL: 使用 Python 的 psycopg2 模块可以访问 PostgreSQL 数据库。和其他数据库模块一样,可以使用 connect 函数连接到数据库,然后使用 cursor 对象执行 SQL 语句。
  • Oracle: 可以使用 Python 的 cx_Oracle 模块访问 Oracle 数据库。和其他数据库模块一样,可以使用 connect 函数连接到数据库,然后使用 cursor 对象执行 SQL 语句。
阅读  Python 包的使用详解

此外,还有许多其他的 Python 库可以用于访问各种不同的数据库,包括 Microsoft SQL Server、MongoDB 等等。

对于使用 Python 访问数据库的更多信息,可以参考 Python 文档中的 sqlite3 模块文档或其他数据库访问库的文档。

在 Python 中,使用数据库通常需要执行以下步骤:

  1. 导入所需的数据库模块,比如 sqlite3 模块。
  2. 使用 connect 函数连接到数据库。
  3. 创建一个 cursor 对象。
  4. 使用 cursor 对象执行 SQL 语句。
  5. 处理查询结果。
  6. 关闭 cursor 对象。
  7. 关闭数据库连接。

下面是一个简单的例子,展示了如何使用 sqlite3 模块来查询数据库中的数据:





import sqlite3

# 连接到 SQLite 数据库
# 数据库文件是 test.db
# 如果文件不存在,会自动在当前目录创建
conn = sqlite3.connect('test.db')

# 创建一个 Cursor
cursor = conn.cursor()

# 执行查询语句
cursor.execute('SELECT * FROM users')

# 获得查询结果
values = cursor.fetchall()

print(values)

# 关闭 Cursor
cursor.close()
# 关闭 Connection
conn.close()

上面的代码执行了一条 SELECT 语句,查询 users 表中的所有记录。然后使用 fetchall 函数获得查询结果,并将结果打印出来。

注意,在执行完数据库操作后,一定要关闭 cursor 和数据库连接,以释放资源。