本篇文章介绍 Python 的内置 sqlite3 模块,以创建 SQLite 数据库连接、创建表并将数据插入该表。
我们必须按照后续步骤向 SQLite 数据库表中插入数据。
import sqlite3
它是一个内置模块; 我们不必单独安装它。 我们只需要导入它并使用它。
connect= sqlite3.connect('test.db')
.connect()
方法创建连接以连接指定的 SQLite 数据库; 在我们的例子中,它是 test.db。 您可以重命名数据库名称,记住以下语法。
sqlite3.connect('database_name.db')
获取游标对象以执行 SQL 查询。
cursor = connect.cursor()
connect.cursor()
方法创建了一个游标对象,我们可以使用它来执行 SQL 查询来操作指定的数据库,无论是创建表、插入数据、更新数据等。
std_table ="""CREATE TABLE STUDENT( FIRSTNAME VARCHAR(255), LASTNAME VARCHAR(255));"""
cursor.execute(std_table)
在这里,我们首先设计我们的 CREATE TABLE 查询并将其保存在 std_table 中。 接下来,我们将 std_table 传递给执行指定查询的 cursor.execute() 方法。
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')