Python SQLite3 编程

PythonPythonIntermediate
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,我们将使用 Python 中的 sqlite3 模块。SQLite 是一个流行的轻量级关系型数据库管理系统,通常用于嵌入式系统和移动应用程序。它也常用于小型 Web 应用程序或其他需要小型数据库的项目。

在本实验中,我们将介绍 SQLite 的基础知识以及如何在 Python 中使用它。我们将从 SQLite 的简要概述开始,然后继续创建数据库、插入数据、查询数据,最后更新和删除数据。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/ModulesandPackagesGroup -.-> python/standard_libraries("Common Standard Libraries") python/FileHandlingGroup -.-> python/file_operations("File Operations") subgraph Lab Skills python/importing_modules -.-> lab-1396{{"Python SQLite3 编程"}} python/standard_libraries -.-> lab-1396{{"Python SQLite3 编程"}} python/file_operations -.-> lab-1396{{"Python SQLite3 编程"}} end

创建数据库

在 Python 中使用 SQLite 的第一步是创建一个新的数据库。你可以使用 sqlite3 模块来创建一个新的数据库,如下所示:

import sqlite3

## 创建一个新的数据库
conn = sqlite3.connect('example.db')

connect 函数会在指定的数据库不存在时创建一个新的数据库。如果数据库已经存在,它将连接到该数据库。conn 变量表示与数据库的连接。

然后运行以下命令:

python3 sqlite3_programming.py

创建表

在创建了一个新的数据库之后,你可以创建一个表来存储数据。以下是一个创建表的示例:

import sqlite3

## 创建一个新的数据库
conn = sqlite3.connect('example.db')

## 创建一个新表
conn.execute('''CREATE TABLE users
             (id INTEGER PRIMARY KEY,
              name TEXT NOT NULL,
              email TEXT NOT NULL,
              age INTEGER);''')

## 提交事务
conn.commit()

这段代码创建了一个名为 users 的新表,包含四列:idnameemailageid 列是主键(Primary Key),这意味着它对每一行都是唯一的,并用于标识表中的每一行。

然后运行以下命令:

python3 sqlite3_programming.py

插入数据

在创建表之后,你可以开始向表中插入数据。以下是一个插入数据的示例:

import sqlite3

## 创建一个新的数据库
conn = sqlite3.connect('example.db')

## 向 users 表中插入数据
conn.execute("INSERT INTO users (name, email, age) VALUES ('John Doe', '[email protected]', 30)")
conn.execute("INSERT INTO users (name, email, age) VALUES ('Jane Doe', '[email protected]', 25)")

## 提交事务
conn.commit()

这段代码向 users 表中插入了两行新数据。INSERT INTO 语句指定了表名以及要插入表中的值。

然后运行以下命令:

python3 sqlite3_programming.py

查询数据

在向表中插入数据后,你可以查询数据以检索信息。以下是一个查询数据的示例:

import sqlite3

## 创建一个新的数据库
conn = sqlite3.connect('example.db')

## 查询 users 表
cursor = conn.execute("SELECT id, name, email, age from users")
for row in cursor:
    print(row)

## 提交事务
conn.commit()

这段代码查询了 users 表并打印出每一行数据。SELECT 语句指定了要从表中检索的列。

然后运行以下命令:

python3 sqlite3_programming.py

更新数据

你也可以使用 UPDATE 语句更新表中现有的数据。以下是一个更新数据的示例:

import sqlite3

## 创建一个新的数据库
conn = sqlite3.connect('example.db')

## 更新 users 表中的数据
conn.execute("UPDATE users SET age = 40 WHERE name = 'Jane Doe'")

## 提交事务
conn.commit()

这段代码更新了 name'Jane Doe' 的行的 age 列。UPDATE 语句指定了表名、要更新的列以及新的值。

然后运行以下命令:

python3 sqlite3_programming.py

删除数据

你也可以使用 DELETE 语句从表中删除数据。以下是一个删除数据的示例:

import sqlite3

## 创建一个新的数据库
conn = sqlite3.connect('example.db')

## 从 users 表中删除数据
conn.execute("DELETE FROM users WHERE name = 'Jane Doe'")

## 提交事务
conn.commit()

这段代码从 users 表中删除了 name'Jane Doe' 的行。DELETE FROM 语句指定了表名以及删除行的条件。

然后运行以下命令:

python3 sqlite3_programming.py

总结

在本实验中,我们介绍了如何在 Python 中使用 SQLite 的基础知识。我们从创建数据库、创建表、插入数据、查询数据,最后到更新和删除数据,逐步深入。代码示例从简单操作逐渐过渡到更复杂的操作。

我们希望本实验能帮助你理解如何在 Python 项目中使用 SQLite。请记住,这只是一个开始,SQLite 还有许多更高级的功能等待你去探索。祝你编程愉快!