从零开始的Python开发日记(4):如何连接SQLite数据库

如何使用Python连接SQLite数据库

SQLite 是一种轻量级的嵌入式数据库,广泛用于小型应用和开发原型。Python 提供了内置的 sqlite3 库,可以方便地连接和操作 SQLite 数据库。本文将介绍如何使用 Python 连接 SQLite 数据库,并包含代码示例。

1. 安装和导入 sqlite3 模块

Python 自带 sqlite3 模块,无需额外安装。可以直接在代码中导入。

python 复制代码
import sqlite3
2. 连接到数据库

可以使用 sqlite3.connect() 方法连接到 SQLite 数据库。如果指定的数据库文件不存在,将创建一个新的数据库文件。

python 复制代码
# 连接到SQLite数据库
conn = sqlite3.connect('example.db')

# 创建一个游标对象
cursor = conn.cursor()
3. 创建表

使用 SQL 语句创建表。例如,创建一个名为 users 的表,包含 id, name, 和 age 列。

python 复制代码
# 创建表
cursor.execute('''
CREATE TABLE users (
    id INTEGER PRIMARY KEY,
    name TEXT NOT NULL,
    age INTEGER NOT NULL
)
''')
4. 插入数据

使用 INSERT INTO 语句插入数据。

python 复制代码
# 插入数据
cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Alice', 30)
''')

cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Bob', 25)
''')

# 提交事务
conn.commit()
5. 查询数据

使用 SELECT 语句查询数据,并使用游标对象的 fetchall() 方法获取所有结果。

python 复制代码
# 查询数据
cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()

# 打印查询结果
for row in rows:
    print(row)
6. 更新数据

使用 UPDATE 语句更新数据。

python 复制代码
# 更新数据
cursor.execute('''
UPDATE users
SET age = 31
WHERE name = 'Alice'
''')

# 提交事务
conn.commit()
7. 删除数据

使用 DELETE FROM 语句删除数据。

python 复制代码
# 删除数据
cursor.execute('''
DELETE FROM users
WHERE name = 'Bob'
''')

# 提交事务
conn.commit()
8. 关闭连接

完成数据库操作后,关闭游标和连接。

python 复制代码
# 关闭游标
cursor.close()

# 关闭连接
conn.close()
完整示例代码

以下是一个完整的示例代码,演示了如何使用 Python 连接 SQLite 数据库并进行基本的数据库操作。

python 复制代码
import sqlite3

# 连接到SQLite数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()

# 创建表
cursor.execute('''
CREATE TABLE IF NOT EXISTS users (
    id INTEGER PRIMARY KEY,
    name TEXT NOT NULL,
    age INTEGER NOT NULL
)
''')

# 插入数据
cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Alice', 30)
''')
cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Bob', 25)
''')

# 提交事务
conn.commit()

# 查询数据
cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()
for row in rows:
    print(row)

# 更新数据
cursor.execute('''
UPDATE users
SET age = 31
WHERE name = 'Alice'
''')
conn.commit()

# 删除数据
cursor.execute('''
DELETE FROM users
WHERE name = 'Bob'
''')
conn.commit()

# 关闭游标和连接
cursor.close()
conn.close()
结论

本文介绍了如何使用 Python 连接 SQLite 数据库,并演示了创建表、插入数据、查询数据、更新数据和删除数据的基本操作。这些示例代码可以帮助你快速上手使用 SQLite 数据库进行开发。

相关推荐
CF14年老兵9 分钟前
Python万物皆对象:从懵懂到顿悟的奇妙之旅
后端·python·trae
这里有鱼汤12 分钟前
发现个用《道德经》+价值投资大咖的智慧,做A股的AI诊股神器,居然还开源了
python
陈天伟教授40 分钟前
(二)Python + 地球信息科学与技术 (GeoICT)=?
开发语言·python
异世界贤狼转生码农1 小时前
MongoDB Windows 系统实战手册:从配置到数据处理入门
数据库·mongodb
之歆1 小时前
大模型微调分布式训练-大模型压缩训练(知识蒸馏)-大模型推理部署(分布式推理与量化部署)-大模型评估测试(OpenCompass)
人工智能·笔记·python
QuZhengRong1 小时前
【数据库】Navicat 导入 Excel 数据乱码问题的解决方法
android·数据库·excel
人工干智能1 小时前
pygame的帧处理中,涉及键盘的有`pg.event.get()`与`pg.key.get_pressed()` ,二者有什么区别与联系?
python·游戏·计算机外设·pygame
码农阿豪1 小时前
Windows从零到一安装KingbaseES数据库及使用ksql工具连接全指南
数据库·windows
R-G-B1 小时前
【P18 3-10】OpenCV Python—— 鼠标控制,鼠标回调函数(鼠标移动、按下、。。。),鼠标绘制基本图形(直线、圆、矩形)
python·opencv·计算机外设·鼠标回调函数·鼠标控制·鼠标移动·鼠标绘制图形
IT古董4 小时前
第四章:大模型(LLM)】06.langchain原理-(3)LangChain Prompt 用法
java·人工智能·python