使用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')
-
获取一个
cursor
对象来执行SQL查询。cursor = connect.cursor()
connect.cursor()
方法创建了一个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
表时,我们不必将我们的查询存储在一个单独的变量中。不过,我们还是可以像上面的INSERT
语句那样,将SQL查询传递给cursor.execute()
方法。 -
显示插入的数据。
print("The 'STUDENT' Table Data:") table_data=cursor.execute('''SELECT * FROM STUDENT''') for row in table_data: print(row)
同样,我们使用
cursor.execute()
方法来运行SELECT
查询,并在table_data
中保存所有的表数据,我们将用它来循环并打印每一行。OUTPUT:
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()
OUTPUT:
The 'STUDENT' Table Data:
('Mehvish', 'Ashiq')
('Raza', 'Tahir')
('Hina', 'Mukhtar')
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。