Python与数据库:使用SQLite进行数据存储和查询

关注博主 - 领取粉丝专享资源

前言

大家好!最近我在处理一些数据存储和查询的工作时,发现了一种非常方便且高效的解决方案——SQLite。作为一个经常与Python打交道的开发者,我觉得有必要把这个过程分享给大家。SQLite是一种轻量级的关系型数据库,它的零配置特性使得它非常适合用于开发和测试环境。今天,我将带大家一起了解如何在Python中使用SQLite进行数据存储和查询。

是不是感觉很兴奋?那就赶快跟上我的脚步,一起探索Python和SQLite的奥秘吧!记得关注我的博客并收藏这篇文章,以便日后参考哦!

什么是SQLite?

SQLite是一种嵌入式关系数据库管理系统,它的代码库被嵌入到最终的应用程序中。与其他数据库不同的是,SQLite并不是一个独立的数据库服务,而是一个可以被嵌入到应用程序中的库文件。它的特点包括:

  • 轻量级:SQLite的库文件非常小,通常在几百KB到几MB之间。
  • 零配置:不需要安装和配置数据库服务器。
  • 自给自足:所有的数据都存储在一个文件中,便于管理和分发。
  • 跨平台:支持Windows、MacOS、Linux等多个平台。

这些特性使得SQLite非常适合小型应用程序、测试和开发环境以及单用户桌面应用。

安装SQLite

在Python中使用SQLite非常简单,因为Python内置了对SQLite的支持。我们只需要导入sqlite3模块即可。

import sqlite3

这意味着我们无需进行额外的安装步骤,直接就可以开始使用SQLite。

创建数据库和表

首先,我们需要创建一个数据库连接并创建一个表。假设我们要存储一些用户信息,比如用户ID、姓名和年龄,我们可以按照下面的步骤进行操作:

import sqlite3

# 连接到SQLite数据库(如果数据库不存在会自动创建)
conn = sqlite3.connect('example.db')
print("Opened database successfully")

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

# 创建用户表
cursor.execute('''
CREATE TABLE IF NOT EXISTS users (
    id INTEGER PRIMARY KEY,
    name TEXT NOT NULL,
    age INTEGER NOT NULL
)
''')
print("Table created successfully")

# 提交当前事务
conn.commit()

# 关闭数据库连接
conn.close()

上述代码将创建一个名为example.db的SQLite数据库文件,并在其中创建一个users表。

插入数据

接下来,我们向users表中插入一些数据。我们可以使用INSERT INTO语句来完成这个任务:

import sqlite3

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

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

# 提交当前事务
conn.commit()
print("Records inserted successfully")

# 关闭数据库连接
conn.close()

通过上述代码,我们向users表中插入了三条记录。

查询数据

我们可以使用SELECT语句从数据库中查询数据。下面是一个简单的查询示例:

import sqlite3

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

# 查询数据
cursor.execute("SELECT id, name, age FROM users")
rows = cursor.fetchall()

# 打印查询结果
for row in rows:
    print(f"ID = {row[0]}, Name = {row[1]}, Age = {row[2]}")

print("Operation done successfully")

# 关闭数据库连接
conn.close()

该代码将查询users表中的所有记录并打印出来。

更新和删除数据

我们还可以使用UPDATEDELETE语句来更新和删除数据。以下是一些示例代码:

import sqlite3

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

# 更新数据
cursor.execute("UPDATE users SET age = 40 WHERE name = 'Alice'")
conn.commit()
print("Total number of rows updated :", cursor.rowcount)

# 删除数据
cursor.execute("DELETE FROM users WHERE name = 'Bob'")
conn.commit()
print("Total number of rows deleted :", cursor.rowcount)

# 关闭数据库连接
conn.close()

上述代码将更新Alice的年龄为40,并删除名为Bob的记录。

结论

在这篇文章中,我们介绍了如何在Python中使用SQLite进行数据存储和查询。从创建数据库和表,到插入、查询、更新和删除数据,希望这些示例代码能帮助你更好地理解SQLite的使用方法。SQLite作为一个轻量级、零配置的数据库,非常适合用于开发和测试环境。如果你觉得这篇文章对你有帮助,不要忘记关注我的博客并收藏这篇文章哦!

关注 全糖冲击 订阅号

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全糖冲击

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值