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


本篇文章介绍 Python 的内置 sqlite3 模块,以创建 SQLite 数据库连接、创建表并将数据插入该表。


使用 sqlite3 模块将数据插入到使用 Python 的 SQLite 数据库中

我们必须按照后续步骤向 SQLite 数据库表中插入数据。

  • 导入 sqlite3 模块。
import sqlite3

它是一个内置模块; 我们不必单独安装它。 我们只需要导入它并使用它。

  • 创建 SQLite 数据库连接。
connect= sqlite3.connect('test.db')

.connect() 方法创建连接以连接指定的 SQLite 数据库; 在我们的例子中,它是 test.db。 您可以重命名数据库名称,记住以下语法。

sqlite3.connect('database_name.db')

获取游标对象以执行 SQL 查询。

cursor = connect.cursor()

connect.cursor() 方法创建了一个游标对象,我们可以使用它来执行 SQL 查询来操作指定的数据库,无论是创建表、插入数据、更新数据等。

  • 创建一个 STUDENT 表。
std_table ="""CREATE TABLE STUDENT( FIRSTNAME VARCHAR(255), LASTNAME VARCHAR(255));"""
cursor.execute(std_table)

在这里,我们首先设计我们的 CREATE TABLE 查询并将其保存在 std_table 中。 接下来,我们将 std_table 传递给执行指定查询的 cursor.execute() 方法。

  • 将数据插入 STUDENT 表。
cursor.execute('''INSERT INTO STUDENT VALUES ('Mehvish', 'Ashiq')''')
cursor.execute('''INSERT INTO STUDENT VALUES ('Raza', 'Tahir')''')
cursor.execute('''INSERT INTO STUDENT VALUES ('Hina', 'Mukhtar')''')

在这里,我们使用 cursor.execute() 方法来运行 INSERT 查询。
%> 请注意 ,在创建 STUDENT 表时,我们不必将查询存储在单独的变量中。 尽管如此,我们仍然可以将 SQL 查询传递给 cursor.execute() 方法,就像我们对上面的 INSERT 语句所做的那样。

  • 显示插入的数据。
print("The 'STUDENT' Table Data:")
table_data=cursor.execute('''SELECT * FROM STUDENT''')
for row in table_data:
  print(row)

同样,我们使用 cursor.execute() 方法运行 SELECT 查询并将所有表数据保存在 table_data 中,我们将使用它来循环并打印每一行。

输出:

The 'STUDENT' Table Data:
('Mehvish', 'Ashiq')
('Raza', 'Tahir')
('Hina', 'Mukhtar')
  • 提交并关闭连接。
connect.commit()
connect.close()

.commit() 将提交我们当前选择的数据库中的最新更改,而 .close() 将关闭连接。 完整的源代码如下。

完整的源代码

import sqlite3

connect= sqlite3.connect('test.db')
cursor = connect.cursor()

std_table ="""CREATE TABLE STUDENT( FIRSTNAME VARCHAR(255), LASTNAME VARCHAR(255));"""
cursor.execute(std_table)

cursor.execute('''INSERT INTO STUDENT VALUES ('Mehvish', 'Ashiq')''')
cursor.execute('''INSERT INTO STUDENT VALUES ('Raza', 'Tahir')''')
cursor.execute('''INSERT INTO STUDENT VALUES ('Hina', 'Mukhtar')''')

print("The 'STUDENT' Table Data:")
table_data=cursor.execute('''SELECT * FROM STUDENT''')
for row in table_data:
    print(row)

connect.commit()
connect.close()

输出:

The 'STUDENT' Table Data:
('Mehvish', 'Ashiq')
('Raza', 'Tahir')
('Hina', 'Mukhtar')

猜你喜欢

转载自blog.csdn.net/fengqianlang/article/details/131589777