如何使用python创建和维护sqlite3数据库

sqlite3是轻量级运行和模拟关系数据库的有效工具。

这里参考网络资料,示例python创建维护sqliite3数据库,演示如何插入、查询、更新和删除数据。

1 创建数据库

使用 connect() 函数创建了一个到名为 case.db 的数据库的连接。

复制代码
import sqlite3

# 创建数据库连接
conn = sqlite3.connect('example.db')

2 创建表

在创建数据库后,就可以进一步创建表,示例python代码如下。

创建包含 id、name、age 和 gender 列的表。

id 列是主键,表示一个学生的唯一标识符;

name 列存储学生的姓名;

age 列存储学生的年龄;

gender 列存储学生的性别。

复制代码
import sqlite3

# 创建数据库连接
conn = sqlite3.connect('example.db')

# 创建表
conn.execute('''CREATE TABLE students
             (id INT PRIMARY KEY     NOT NULL,
             name           TEXT    NOT NULL,
             age            INT     NOT NULL,
             gender         TEXT    NOT NULL);''')

# 提交更改
conn.commit()

# 关闭连接
conn.close()

3 插入数据

创建完表后,就可以插入数据,示例代码如下。

使用 INSERT INTO 语句将student数据插入到表中。

复制代码
import sqlite3

# 创建数据库连接
conn = sqlite3.connect('example.db')

# 插入数据
conn.execute("INSERT INTO students (id, name, age, gender) \
              VALUES (1, 'Tom', 20, 'Male')")

# 提交更改
conn.commit()

# 关闭连接
conn.close()

4 查询数据

在插入数据后,就可以示例数据查询了。

使用execute() 执行 SELECT 语句,使用for循环遍历查询结果。

在每次循环中,打印出每个学生的 ID、姓名、年龄和性别。

复制代码
import sqlite3

# 创建数据库连接
conn = sqlite3.connect('example.db')

# 查询数据
cursor = conn.execute("SELECT id, name, age, gender from students")
for row in cursor:
   print("ID = ", row[0])
   print("Name = ", row[1])
   print("Age = ", row[2])
   print("Gender = ", row[3])

# 关闭连接
conn.close()

输出如下

ID = 1

Name = Tom

Age = 20

Gender = Male

5 更新数据

由于数据库中已有数据,这里就可以示例数据更新了。

执行UPDATE语句,将ID为1的学生的年龄更新为 21。

复制代码
import sqlite3

# 创建数据库连接
conn = sqlite3.connect('example.db')

# 更新数据
conn.execute("UPDATE students set age = 21 where id = 1")

# 提交更改
conn.commit()

# 关闭连接
conn.close()

6 删除数据

这里是删除数据示例,删除 "students" 表中 ID 为 1 的学生的记录。

复制代码
import sqlite3

# 创建数据库连接
conn = sqlite3.connect('example.db')

# 删除数据
conn.execute("DELETE from students where id = 1")

# 提交更改
conn.commit()

# 关闭连接
conn.close()

reference


SQLite 创建一个表在 sqlite3 Python 中

https://geek-docs.com/sqlite/sqlite-questions/253_sqlite_creating_a_table_in_sqlite3_python.html

相关推荐
TDengine (老段)10 小时前
TDengine 数学函数 DEGRESS 用户手册
大数据·数据库·sql·物联网·时序数据库·iot·tdengine
TDengine (老段)10 小时前
TDengine 数学函数 GREATEST 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
安当加密10 小时前
云原生时代的数据库字段加密:在微服务与 Kubernetes 中实现合规与敏捷的统一
数据库·微服务·云原生
爱喝白开水a10 小时前
LangChain 基础系列之 Prompt 工程详解:从设计原理到实战模板_langchain prompt
开发语言·数据库·人工智能·python·langchain·prompt·知识图谱
想ai抽11 小时前
深入starrocks-多列联合统计一致性探查与策略(YY一下)
java·数据库·数据仓库
武子康11 小时前
Java-152 深入浅出 MongoDB 索引详解 从 MongoDB B-树 到 MySQL B+树 索引机制、数据结构与应用场景的全面对比分析
java·开发语言·数据库·sql·mongodb·性能优化·nosql
longgyy11 小时前
5 分钟用火山引擎 DeepSeek 调用大模型生成小红书文案
java·数据库·火山引擎
ytttr87312 小时前
C# 仿QQ聊天功能实现 (SQL Server数据库)
数据库·oracle·c#
盒马coding12 小时前
第18节-索引-Partial-Indexes
数据库·postgresql