下面是Python使用sqlite3第三方库读写SQLite数据库的方法步骤的完整攻略。
SQLite数据库简介
SQLite是一种轻量级数据库,它以文件形式存储数据,无需服务器来管理数据。SQLite支持SQL语法,拥有良好的移植性和高性能,被广泛应用于桌面应用、嵌入式设备和移动设备等领域。
Python使用sqlite3库操作SQLite数据库的方法步骤
Python的sqlite3库是sqlite3数据库的官方接口之一,它提供了Python访问SQLite数据库的API。下面是Python使用sqlite3库操作SQLite数据库的方法步骤。
1. 连接数据库
使用sqlite3库之前,首先需要连接到SQLite数据库。
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
上述代码中,我们使用connect()方法连接到名为test.db的SQLite数据库。如果该数据库不存在,则会创建一个新的数据库文件。
2. 创建表
使用SQLite数据库之前,需要在该数据库中创建相应的表。
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
# 创建一个代表学生信息的表
conn.execute('''CREATE TABLE students
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
GRADE INT NOT NULL);''')
上述代码中,我们使用execute()方法执行SQL语句CREATE TABLE students
,创建一个名为students的表,该表包含ID、NAME和GRADE三个字段,分别代表学生的学号、姓名和分数。在创建表时,我们还设置了ID字段为主键,不允许为空。
3. 插入数据
创建表之后,接下来就可以往表中插入数据了。
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
# 创建一个代表学生信息的表
conn.execute('''CREATE TABLE students
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
GRADE INT NOT NULL);''')
# 插入一条学生信息
conn.execute("INSERT INTO students (ID, NAME, GRADE) VALUES (1, '张三', 90)")
上述代码中,我们使用execute()方法执行SQL语句INSERT INTO students
,往students表中插入一条学生信息,该学生的学号是1,姓名是张三,分数是90。
4. 查询数据
插入数据之后,我们可以使用SELECT语句查询表中的数据。
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
# 创建一个代表学生信息的表
conn.execute('''CREATE TABLE students
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
GRADE INT NOT NULL);''')
# 插入一条学生信息
conn.execute("INSERT INTO students (ID, NAME, GRADE) VALUES (1, '张三', 90)")
# 查询学生信息
cursor = conn.execute("SELECT ID, NAME, GRADE from students")
for row in cursor:
print('学生信息: ID={0}, NAME={1}, GRADE={2}'.format(row[0], row[1], row[2]))
上述代码中,我们使用execute()方法执行SQL语句SELECT ID, NAME, GRADE from students
,查询students表中学生的学号、姓名和分数。查询结果会通过游标(cursor)返回,我们可以根据需要逐行读取游标中的数据,并将其打印出来。
5. 更新数据
查询数据之后,有时候需要对已经存在的数据进行修改。
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
# 创建一个代表学生信息的表
conn.execute('''CREATE TABLE students
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
GRADE INT NOT NULL);''')
# 插入一条学生信息
conn.execute("INSERT INTO students (ID, NAME, GRADE) VALUES (1, '张三', 90)")
# 更新学生信息
conn.execute("UPDATE students SET GRADE=95 WHERE ID=1")
上述代码中,我们使用execute()方法执行SQL语句UPDATE students SET GRADE=95 WHERE ID=1
,将学号为1的学生的分数修改为95。
6. 删除数据
在某些情况下,我们需要从表中删除不需要的数据。
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
# 创建一个代表学生信息的表
conn.execute('''CREATE TABLE students
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
GRADE INT NOT NULL);''')
# 插入一条学生信息
conn.execute("INSERT INTO students (ID, NAME, GRADE) VALUES (1, '张三', 90)")
# 删除学生信息
conn.execute("DELETE FROM students WHERE ID=1")
上述代码中,我们使用execute()方法执行SQL语句DELETE FROM students WHERE ID=1
,删除学号为1的学生的信息。
示例说明
下面是两个Python操作SQLite数据库的示例说明。
示例1:创建SQLite数据库
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
# 创建一个代表学生信息的表
conn.execute('''CREATE TABLE students
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
GRADE INT NOT NULL);''')
# 关闭数据库连接
conn.close()
print('SQLite数据库创建成功!')
上述代码中,我们使用connect()方法连接到名为test.db的SQLite数据库,然后使用execute()方法执行SQL语句CREATE TABLE students
,创建一个名为students的表。最后,我们使用close()方法关闭数据库连接,输出一条提示信息。
示例2:查询SQLite数据库
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('test.db')
# 查询学生信息
cursor = conn.execute("SELECT ID, NAME, GRADE from students")
for row in cursor:
print('学生信息: ID={0}, NAME={1}, GRADE={2}'.format(row[0], row[1], row[2]))
# 关闭数据库连接
conn.close()
上述代码中,我们使用connect()方法连接到名为test.db的SQLite数据库,然后使用execute()方法执行SQL语句SELECT ID, NAME, GRADE from students
,查询students表中学生的学号、姓名和分数。查询结果会通过游标(cursor)返回,我们可以根据需要逐行读取游标中的数据,并将其打印出来。最后,我们使用close()方法关闭数据库连接。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python使用sqlite3第三方库读写SQLite数据库的方法步骤 - Python技术站