import sqlite3
# 连接到SQLite数据库
# 数据库文件是test.db,如果文件不存在,会自动在当前目录创建:
conn = sqlite3.connect('test.db')
print("数据库连接成功!")
# 创建一个Cursor:
cursor = conn.cursor()
# 执行一条SQL语句,创建user表:
cursor.execute('CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
# 插入一条记录:
cursor.execute("INSERT INTO user (name, age) VALUES ('Alice', 28)")
cursor.execute("INSERT INTO user (name, age) VALUES ('Bob', 24)")
# 提交事务:
conn.commit()
# 查询用户信息:
cursor.execute('SELECT * FROM user')
values = cursor.fetchall()
print("查询结果:", values)
# 关闭Cursor:
cursor.close()
# 关闭Connection:
conn.close()
print("数据库连接关闭!")
这段代码展示了如何使用Python连接SQLite数据库,并执行基本的数据库操作,包括创建表、插入数据和查询数据。以下是代码的详细解析:
首先,我们导入了
sqlite3模块,这是Python的标准库之一,用于与SQLite数据库交互。使用
sqlite3.connect('test.db')连接到名为test.db的SQLite数据库。如果数据库文件不存在,Python会自动创建它。创建一个
Cursor对象,它用于执行SQL语句和获取结果。使用
cursor.execute('CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')创建一个名为user的表,如果该表已经存在,则不会重复创建。通过
cursor.execute("INSERT INTO user (name, age) VALUES ('Alice', 28)")和cursor.execute("INSERT INTO user (name, age) VALUES ('Bob', 24)")向user表中插入两条记录。使用
conn.commit()提交事务,确保所有的更改都保存到数据库中。执行
cursor.execute('SELECT * FROM user')查询user表中的所有记录,并通过cursor.fetchall()获取结果。打印查询结果。
使用
cursor.close()关闭Cursor。最后,使用
conn.close()关闭数据库连接。
这段代码是一个简单的示例,展示了如何使用Python与SQLite数据库进行基本的交互。如果你需要连接到其他类型的数据库,如MySQL或PostgreSQL,你需要使用相应的数据库适配器,如mysql-connector-python或psycopg2,并相应地调整连接代码。
