如何使用 Python 将数据插入 SQLite 数据库

SQLite 是一种轻量级的嵌入式数据库,它提供了简单易用的 API,使得在 Python 中插入数据变得非常方便。本文将介绍如何使用 Python 将数据插入 SQLite 数据库,并提供一些示例和注意事项。

安装 SQLite 和 Python 的 SQLite3 模块

在开始之前,确保你已经安装了 SQLite 和 Python 的 SQLite3 模块。SQLite 可以从其官方网站(https://www.sqlite.org)下载,而 Python 的 SQLite3 模块通常已经包含在 Python 的标准库中。

创建数据库和表格

在插入数据之前,我们需要先创建一个数据库和相应的表格。可以使用 SQLite 提供的命令行工具或者在 Python 中使用 SQLite3 模块来创建数据库和表格。

下面是一个示例,展示如何在 Python 中创建一个名为 “mydatabase.db” 的数据库和名为 “mytable” 的表格:

import sqlite3

# 连接到数据库
conn = sqlite3.connect('mydatabase.db')

# 创建一个游标对象
cursor = conn.cursor()

# 创建表格
cursor.execute('''CREATE TABLE IF NOT EXISTS mytable
                  (id INTEGER PRIMARY KEY AUTOINCREMENT,
                   name TEXT NOT NULL,
                   age INTEGER NOT NULL)''')

# 提交更改
conn.commit()

# 关闭连接
conn.close()

插入数据

一旦数据库和表格创建完成,我们就可以使用 Python 将数据插入 SQLite 数据库了。SQLite3 模块提供了 INSERT 语句来插入数据。

下面是一个示例,展示如何在 Python 中插入一条数据到 “mytable” 表格中:

import sqlite3

# 连接到数据库
conn = sqlite3.connect('mydatabase.db')

# 创建一个游标对象
cursor = conn.cursor()

# 插入一条数据
data = ('John Doe', 25)
cursor.execute('INSERT INTO mytable (name, age) VALUES (?, ?)', data)

# 提交更改
conn.commit()

# 关闭连接
conn.close()

注意事项

在使用 Python 插入数据到 SQLite 数据库时,需要注意以下事项:

  • 数据类型匹配:确保插入的数据类型与表格中定义的数据类型一致,否则可能会导致插入失败或数据损坏。
  • SQL 注入:避免直接将用户提供的数据拼接到 SQL 语句中,以防止 SQL 注入攻击。应该使用参数化查询(如上述示例中的 ?)来插入数据。
  • 批量插入:如果需要插入大量数据,可以考虑使用事务来提高插入性能。可以使用 conn.commit() 来提交一批插入操作,而不是每次插入都提交一次。

结论:

本文介绍了如何使用 Python 将数据插入 SQLite 数据库。通过创建数据库和表格,然后使用 SQLite3 模块的 INSERT 语句插入数据,我们可以轻松地将数据存储到 SQLite 数据库中。在实际使用中,需要注意数据类型匹配、SQL 注入和批量插入等问题,以确保数据的完整性和安全性。