Python中使用SQLite
概述
Python自带的数据库是SQLite,它是一个轻量级的数据库,不需要单独的服务器进程,所有的维护都来自于SQLite软件本身。从Python 2.5开始,SQLite就成为了Python语言的标准模块,这也是Python中唯一一个数据库接口类模块,适合开发小型数据库系统。
使用
要使用SQLite,你需要导入Python的sqlite3模块。这个模块提供了与PEP 249描述的DB-API 2.0规范兼容的SQL接口。使用sqlite3模块,你首先必须创建一个表示数据库的连接对象,然后可以选择性地创建光标对象,这将帮助你执行所有的SQL语句。
创建数据库连接
使用sqlite3.connect()函数可以连接到SQLite数据库,如果指定的数据库文件不存在,连接对象会自动创建数据库文件;如果数据库文件已经存在,则连接对象不会再创建数据库文件,而是直接打开该数据库文件,例如
import sqlite3# 在硬盘上创建数据库
conn = sqlite3.connect('example.db')# 在内存中创建数据库
conn = sqlite3.connect(':memory:')
创建游标对象
创建游标对象后,你可以使用它的*execute()*方法来执行SQL命令,进行数据操作。例如:
# 创建游标对象
cur = conn.cursor()# 创建表
cur.execute('''CREATE TABLE scores
(name TEXT, class TEXT, gender TEXT, chinese NUMBER,
math NUMBER, english NUMBER)''')# 插入数据
cur.execute("INSERT INTO scores VALUES ('A', '一班', '男', 96, 94, 98)")# 查询数据
cur.execute("SELECT * FROM scores WHERE math > 90")
print(cur.fetchall())# 提交改动
conn.commit()# 关闭游标和连接
cur.close()
conn.close()
执行SQL语句
使用游标对象,你可以执行各种SQL语句,包括创建表、插入数据、更新数据、删除数据和查询数据等。SQLite支持标准的SQL语法,并且可以使用问号和命名占位符来参数化SQL语句。