SQLite Python Sqlite3:插入数据进表格
在本文中,我们将介绍如何使用Python的sqlite3模块将数据插入SQLite数据库表格中。
阅读更多:SQLite 教程
SQLite简介
SQLite是一个嵌入式关系型数据库管理系统,是一个零配置的数据库系统,不需要服务器运行,也不需要配置。SQLite数据库以文件的形式存储,并提供了标准的SQL语言来进行数据库操作。Python的sqlite3模块是Python内置的官方模块,可用于操作SQLite数据库。
连接到SQLite数据库
在我们开始插入数据之前,首先需要连接到SQLite数据库。使用sqlite3模块中的connect()函数可以连接到数据库。连接完成后,我们可以通过创建一个游标对象来执行SQL语句。
下面是连接到SQLite数据库的示例代码:
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('mydatabase.db')
# 创建游标对象
cursor = conn.cursor()
创建表格
在插入数据之前,我们还需要先创建一个数据库表格。使用CREATE TABLE语句可以在数据库中创建一个新的表格。表格由列和每列的数据类型组成。
下面是创建一个表格的示例代码:
# 创建一个表格
cursor.execute('''CREATE TABLE students
(id INT PRIMARY KEY NOT NULL,
name TEXT,
age INT)''')
插入数据
在SQLite中,使用INSERT INTO语句可以将数据插入到指定的表格中。通过构建一个包含要插入值的字典,我们可以使用占位符的方式将这些值插入到表格中。
下面是将数据插入表格的示例代码:
# 将数据插入表格
data = {'id': 1, 'name': 'Alice', 'age': 20}
cursor.execute("INSERT INTO students VALUES (:id, :name, :age)", data)
批量插入数据
如果我们要一次性插入多条数据,可以使用executemany()函数批量插入数据。该函数可以传递一个包含多个要插入值的列表。
下面是批量插入数据的示例代码:
# 批量插入数据
data_list = [(2, 'Bob', 22), (3, 'Charlie', 25), (4, 'David', 27)]
cursor.executemany("INSERT INTO students VALUES (?, ?, ?)", data_list)
提交事务
在执行插入操作后,我们需要手动提交事务。使用commit()函数可以提交当前的数据库事务,并将更改保存到数据库中。
下面是提交事务的示例代码:
# 提交事务
conn.commit()
查询插入结果
我们可以使用SELECT语句查询插入的数据,以验证数据是否成功插入表格中。
下面是查询插入结果的示例代码:
# 查询插入结果
cursor.execute("SELECT * FROM students")
rows = cursor.fetchall()
for row in rows:
print(row)
关闭连接
最后,在完成所有数据库操作后,需要关闭数据库连接。
下面是关闭连接的示例代码:
# 关闭连接
conn.close()
总结
本文介绍了如何使用Python的sqlite3模块将数据插入SQLite数据库表格中。我们首先连接到数据库,然后创建表格。接着,通过构建字典和占位符的方式插入数据。对于批量插入,我们使用executemany()函数。最后,我们提交事务并查询插入结果。使用完毕后,需要关闭数据库连接。
使用Python的sqlite3模块操作SQLite数据库可以很方便地进行数据的插入,并且不需要额外的数据库服务器。这使得SQLite成为一种非常适合小型项目和原型开发的数据库选择。
更多关于sqlite3模块的详细用法,请查阅官方文档:https://docs.python.org/3/library/sqlite3.html