SQLite是一个轻量级的数据库,它不需要独立的服务器进程,可以直接访问数据库文件。Python内置的sqlite3模块使得与SQLite数据库的对接变得简单而高效。本文将详细介绍如何在Python中使用sqlite3模块进行数据库操作,包括连接数据库、创建表、插入、查询、更新和删除数据。
连接数据库
首先,我们需要导入sqlite3模块,并使用connect()方法连接到SQLite数据库。如果数据库文件不存在,sqlite3会自动创建它。
import sqlite3
# 连接到SQLite数据库
# 如果文件不存在,会自动在当前目录创建:
conn = sqlite3.connect('example.db')
创建表
使用cursor对象执行SQL语句来创建表。
cursor = conn.cursor()
cursor.execute('''
CREATE TABLE IF NOT EXISTS stocks (
date text,
trans text,
symbol text,
qty real,
price real
)
''')
插入数据
插入数据到表中,可以使用execute()方法。
cursor.execute("INSERT INTO stocks VALUES ('2022-03-07', 'BUY', 'AAPL', 100, 136.5)")
查询数据
查询数据使用SELECT语句。
cursor.execute("SELECT * FROM stocks")
rows = cursor.fetchall()
for row in rows:
print(row)
更新数据
更新表中的数据,可以使用UPDATE语句。
cursor.execute("UPDATE stocks SET price = price * 1.1 WHERE symbol = 'AAPL'")
删除数据
删除表中的数据,可以使用DELETE语句。
cursor.execute("DELETE FROM stocks WHERE symbol = 'AAPL'")
提交更改
在执行完所有数据库操作后,需要提交更改。
conn.commit()
关闭连接
最后,关闭游标和连接。
cursor.close()
conn.close()
使用上下文管理器
Python的上下文管理器可以确保即使在发生异常的情况下也能正确关闭数据库连接。
import sqlite3
with sqlite3.connect('example.db') as conn:
cursor = conn.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS stocks (...)")
# 其他数据库操作
以上就是在Python中使用SQLite数据库的基本操作。通过sqlite3模块,我们可以轻松地与SQLite数据库进行交互,实现高效的数据存储和管理。