Python编写简单的数据库连接和查询程序
发布时间:2023-12-04 22:28:49
在Python中,我们可以使用多种库来实现数据库连接和查询操作,比如MySQLdb,PyMySQL,sqlite3等等。下面是一个示例,演示了如何使用sqlite3库来连接和查询SQLite数据库。
首先,我们需要安装sqlite3库。可以使用以下命令来安装:
pip install sqlite3
接下来,我们需要创建一个数据库和一张表来存储数据。可以使用以下代码:
import sqlite3
# 连接数据库(如果数据库不存在则会创建)
conn = sqlite3.connect('example.db')
# 创建游标对象
c = conn.cursor()
# 创建表
c.execute('''CREATE TABLE IF NOT EXISTS students
(id INT PRIMARY KEY NOT NULL,
name TEXT NOT NULL,
age INT NOT NULL)''')
# 关闭游标
c.close()
# 提交更改并关闭连接
conn.commit()
conn.close()
以上代码创建了一个名为example.db的SQLite数据库,并在其中创建了一个名为students的表,该表有id、name和age三个字段。
接下来,我们可以编写查询程序来操作数据库。以下是一个简单的示例,展示了如何插入、查询和更新数据:
import sqlite3
# 连接到数据库
conn = sqlite3.connect('example.db')
c = conn.cursor()
# 插入数据
c.execute("INSERT INTO students (id, name, age) VALUES (1, 'Mike', 20)")
c.execute("INSERT INTO students (id, name, age) VALUES (2, 'Emily', 22)")
c.execute("INSERT INTO students (id, name, age) VALUES (3, 'John', 21)")
# 查询数据
c.execute("SELECT * FROM students")
result = c.fetchall()
for row in result:
print(row)
# 更新数据
c.execute("UPDATE students SET age = 23 WHERE id = 1")
# 提交更改
conn.commit()
# 再次查询数据
c.execute("SELECT * FROM students")
result = c.fetchall()
for row in result:
print(row)
# 关闭游标和连接
c.close()
conn.close()
以上代码中,我们首先使用execute()方法来执行SQL语句来插入几条数据。然后,我们使用fetchall()方法来获取查询结果,并打印结果。接下来,我们使用execute()方法来更新数据,并再次查询数据,验证更新结果。
以上就是一个简单的Python数据库连接和查询程序的示例。通过使用不同的数据库库,可以轻松地连接和操作各种类型的数据库。你可以根据自己的需要,选择适合的库和数据库来实现相应的功能。
