赞
踩
SQLite是一种轻量级的嵌入式数据库,适用于许多小型项目或移动应用。Python内置了sqlite3
模块,使得与SQLite数据库的交互变得非常简便。本篇博客将深入介绍如何使用Python操作SQLite数据库,包括数据库的创建、表的操作、数据的插入和查询等。
首先,我们需要通过sqlite3
模块连接到SQLite数据库:
import sqlite3
# 连接到SQLite数据库(如果不存在,则会创建)
conn = sqlite3.connect('example.db')
接下来,我们可以使用连接对象创建表:
# 创建一个游标对象 cursor = conn.cursor() # 创建表的SQL语句 create_table_sql = ''' CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY, username TEXT NOT NULL, email TEXT NOT NULL ); ''' # 执行SQL语句 cursor.execute(create_table_sql) # 提交更改 conn.commit()
现在我们有一个名为users
的表,接下来我们可以插入一些数据:
# 插入数据的SQL语句
insert_data_sql = '''
INSERT INTO users (username, email) VALUES (?, ?);
'''
# 数据
user_data = [('Alice', 'alice@example.com'), ('Bob', 'bob@example.com')]
# 执行SQL语句
cursor.executemany(insert_data_sql, user_data)
# 提交更改
conn.commit()
我们可以使用SELECT
语句查询数据:
# 查询数据的SQL语句
select_data_sql = 'SELECT * FROM users;'
# 执行SQL语句
cursor.execute(select_data_sql)
# 获取所有数据
all_users = cursor.fetchall()
# 打印查询结果
for user in all_users:
print(user)
# 更新数据的SQL语句 update_data_sql = 'UPDATE users SET email=? WHERE username=?;' # 执行SQL语句 cursor.execute(update_data_sql, ('new_email@example.com', 'Alice')) # 提交更改 conn.commit() # 删除数据的SQL语句 delete_data_sql = 'DELETE FROM users WHERE username=?;' # 执行SQL语句 cursor.execute(delete_data_sql, ('Bob',)) # 提交更改 conn.commit()
为了确保及时关闭数据库连接,我们可以使用with
语句:
with sqlite3.connect('example.db') as conn:
cursor = conn.cursor()
# 进行数据库操作
# ...
# 在离开with块后,连接会自动关闭
import sqlite3 # 连接到SQLite数据库(如果不存在,则会创建) with sqlite3.connect('example.db') as conn: cursor = conn.cursor() # 创建表的SQL语句 create_table_sql = ''' CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY, username TEXT NOT NULL, email TEXT NOT NULL ); ''' # 执行SQL语句 cursor.execute(create_table_sql) # 插入数据的SQL语句 insert_data_sql = ''' INSERT INTO users (username, email) VALUES (?, ?); ''' # 数据 user_data = [('Alice', 'alice@example.com'), ('Bob', 'bob@example.com')] # 执行SQL语句 cursor.executemany(insert_data_sql, user_data) # 提交更改 conn.commit() # 查询数据的SQL语句 select_data_sql = 'SELECT * FROM users;' # 执行SQL语句 cursor.execute(select_data_sql) # 获取所有数据 all_users = cursor.fetchall() # 打印查询结果 for user in all_users: print(user)
通过sqlite3
模块,Python提供了一个简单而强大的工具来与SQLite数据库交互。从连接数据库、创建表、插入数据、查询数据到更新和删除数据,本篇博客提供了一个全面的指南,帮助你更好地使用Python进行SQLite数据库的操作。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。