您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Python

Python内置数据库:轻量级SQLite

时间:2023-11-24 12:25:43  来源:微信公众号  作者:python学习之旅

Python/ target=_blank class=infotextkey>Python是一种流行的编程语言,可以用于开发各种应用程序,从图形用户界面到网站和游戏。Python的一个特点是,它内置了一个轻量级的关系型数据库SQLite,它可以提供快速、简单的数据存储和检索。本篇博客将介绍Python内置数据库SQLite的特点、用法和一些实用技巧,帮助读者更好地利用它来构建全面的应用程序。

Python内置数据库:轻量级SQLite

1. 初识SQLite

SQLite是一个轻量级的数据库,它不需要单独的服务器进程,可以直接嵌入到Python程序中。Python内置了对SQLite的支持,内置库不需要安装,我们可以通过SQLite3模块来使用SQLite数据库。

SQLite数据库使用的.db文件是一种数据库文件,属于二进制文件类型。它是由SQLite引擎创建和管理的,用于存储和管理数据。SQLite数据库文件包含了表格、行和列等结构化数据,并提供了对这些数据的读取、写入和查询等功能。

SQLite数据库文件的特点如下:

  • 单个文件:SQLite数据库通常由单个.db文件组成,包含了所有的表格和数据,没有额外的配置文件或目录。
  • 压缩格式:SQLite数据库文件使用了一种专有的压缩格式,可以有效地压缩和存储大量的数据。
  • 跨平台可移植性:SQLite数据库文件可以在不同的操作系统上进行共享和使用,包括windowslinuxmac等。
  • 零配置:创建和使用SQLite数据库文件通常不需要进行任何额外的配置或服务器设置,只需使用合适的库或工具即可。

由于SQLite数据库文件是二进制格式,并且具有一定的文件结构和格式,所以通常需要使用专门的SQLite数据库引擎或相关的工具才能正确地读取、写入和操作这些文件。

 

2.牛刀小试

import sqlite3

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

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

# 执行一个查询
cursor.execute('SELECT SQLITE_VERSION()')

# 打印查询结果
data = cursor.fetchone()
print("SQLite version:", data)
# SQLite version: ('3.40.1',)

# 关闭连接
conn.close()

3. Sqlite的增删改查

以下是一个简单的SQLite使用示例:

import sqlite3

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

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

# 创建表格
# 创建一个名为students的表,包含id、name和age三个字段
cursor.execute('''CREATE TABLE students (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)''')
# cursor.execute('''CREATE TABLE stocks
#                   (date text, trans text, symbol text, qty real, price real)''')

# 插入数据
# 向students表中插入一条数据
cursor.execute("INSERT INTO students (name, age) VALUES ('张三', 20)")
# cursor.execute("INSERT INTO stocks VALUES ('2022-10-28', 'BUY', 'GOOG', 100, 490.1)")

# 保存更改
conn.commit()

# 关闭连接
conn.close()

在上述例子中,我们新建了一张表,并且插入了一条数据,但是我们一般是打不开这个文件的,需要借助插件来查看数据文件;这个时候需要安装一个插件:

 

SQLite3 Editor

 

如下所示:

Python内置数据库:轻量级SQLite

然后就可以预览刚才数据的操作:

Python内置数据库:轻量级SQLite

建表完成之后就可以进行数据的增删改查。

(1) 查询数据

import sqlite3

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

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

# 查询users表中的所有数据
cursor.execute("SELECT * FROM students")
rows = cursor.fetchall()

# 打印查询结果
for row in rows:
    print(row)

# 关闭连接
conn.close()
# (1, '张三', 20)

 

(2) 更新数据

import sqlite3

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

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


# 更新users表中id为1的数据的name字段为'李四'
cursor.execute("UPDATE students SET name=? WHERE id=?", ('李四', 1))

# 查询users表中的所有数据
cursor.execute("SELECT * FROM students")
rows = cursor.fetchall()

# 打印查询结果
for row in rows:
    print(row)

# 关闭连接
conn.close()
# (1, '李四', 20)

 

(3) 删除数据

import sqlite3

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

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

# 删除users表中id为1的数据
cursor.execute("DELETE FROM students WHERE id=?", (1,))

# 提交更改并关闭连接
conn.commit()
conn.close()

 

(4) 提交事务

conn.commit()

 

(5) 关闭游标和连接

cursor.close()
conn.close()

 

总结

Python内置的SQLite数据库具有自包含、跨平台、无服务器和易于使用的特点,可以帮助开发人员快速创建和维护小型数据库应用。此外,Python语言自身也提供了丰富的模块和库,可以与SQLite无缝协作,非常方便。在此基础上,我们可以尝试更高级的数据库技术,如ORM(对象关系映射)、数据库迁移和分布式系统构建等。相信有了这篇博客的帮助,您对Python内置的SQLite会有更深入的了解并深受裨益。



Tags:Python   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Python 可视化:Plotly 库使用基础
当使用 Plotly 进行数据可视化时,我们可以通过以下示例展示多种绘图方法,每个示例都会有详细的注释和说明。1.创建折线图import plotly.graph_objects as go# 示例1: 创建简单...【详细内容】
2024-04-01  Search: Python  点击:(8)  评论:(0)  加入收藏
Python 办公神器:教你使用 Python 批量制作 PPT
介绍本文将介绍如何使用openpyxl和pptx库来批量制作PPT奖状。本文假设你已经安装了python和这两个库。本文的场景是:一名基层人员,要给一次比赛活动获奖的500名选手制作奖状,并...【详细内容】
2024-03-26  Search: Python  点击:(15)  评论:(0)  加入收藏
Python实现工厂模式、抽象工厂,单例模式
工厂模式是一种常见的设计模式,它可以帮助我们创建对象的过程更加灵活和可扩展。在Python中,我们可以使用函数和类来实现工厂模式。一、Python中实现工厂模式工厂模式是一种常...【详细内容】
2024-03-07  Search: Python  点击:(31)  评论:(0)  加入收藏
不可不学的Python技巧:字典推导式使用全攻略
Python的字典推导式是一种优雅而强大的工具,用于创建字典(dict)。这种方法不仅代码更加简洁,而且执行效率高。无论你是Python新手还是有经验的开发者,掌握字典推导式都将是你技能...【详细内容】
2024-02-22  Search: Python  点击:(32)  评论:(0)  加入收藏
如何进行Python代码的代码重构和优化?
Python是一种高级编程语言,它具有简洁、易于理解和易于维护的特点。然而,代码重构和优化对于保持代码质量和性能至关重要。什么是代码重构?代码重构是指在不改变代码外部行为的...【详细内容】
2024-02-22  Search: Python  点击:(32)  评论:(0)  加入收藏
Python开发者必备的八个PyCharm插件
在编写代码的过程中,括号几乎无处不在,以至于有时我们会拼命辨别哪个闭合括号与哪个开头的括号相匹配。这款插件能帮助解决这个众所周知的问题。前言在PyCharm中浏览插件列表...【详细内容】
2024-01-26  Search: Python  点击:(84)  评论:(0)  加入收藏
Python的Graphlib库,再也不用手敲图结构了
Python中的graphlib库是一个功能强大且易于使用的工具。graphlib提供了许多功能,可以帮助您创建、操作和分析图形对象。本文将介绍graphlib库的主要用法,并提供一些示例代码和...【详细内容】
2024-01-26  Search: Python  点击:(86)  评论:(0)  加入收藏
大语言模型插件功能在携程的Python实践
作者简介成学,携程高级安全研发工程师,关注Python/Golang后端开发、大语言模型等领域。一、背景2023年初,科技圈最火爆的话题莫过于大语言模型了,它是一种全新的聊天机器人模型,...【详细内容】
2024-01-26  Search: Python  点击:(73)  评论:(0)  加入收藏
如何使用Python、Apache Kafka和云平台构建健壮的实时数据管道
译者 | 李睿审校 | 重楼在当今竞争激烈的市场环境中,为了生存和发展,企业必须能够实时收集、处理和响应数据。无论是检测欺诈、个性化用户体验还是监控系统,现在都需要接近即时...【详细内容】
2024-01-26  Search: Python  点击:(46)  评论:(0)  加入收藏
Python分布式爬虫打造搜索引擎
简单分布式爬虫结构主从模式是指由一台主机作为控制节点负责所有运行网络爬虫的主机进行管理,爬虫只需要从控制节点那里接收任务,并把新生成任务提交给控制节点就可以了,在这个...【详细内容】
2024-01-25  Search: Python  点击:(58)  评论:(0)  加入收藏
▌简易百科推荐
Python 可视化:Plotly 库使用基础
当使用 Plotly 进行数据可视化时,我们可以通过以下示例展示多种绘图方法,每个示例都会有详细的注释和说明。1.创建折线图import plotly.graph_objects as go# 示例1: 创建简单...【详细内容】
2024-04-01  Python技术    Tags:Python   点击:(8)  评论:(0)  加入收藏
Python 办公神器:教你使用 Python 批量制作 PPT
介绍本文将介绍如何使用openpyxl和pptx库来批量制作PPT奖状。本文假设你已经安装了python和这两个库。本文的场景是:一名基层人员,要给一次比赛活动获奖的500名选手制作奖状,并...【详细内容】
2024-03-26  Python技术  微信公众号  Tags:Python   点击:(15)  评论:(0)  加入收藏
Python实现工厂模式、抽象工厂,单例模式
工厂模式是一种常见的设计模式,它可以帮助我们创建对象的过程更加灵活和可扩展。在Python中,我们可以使用函数和类来实现工厂模式。一、Python中实现工厂模式工厂模式是一种常...【详细内容】
2024-03-07  Python都知道  微信公众号  Tags:Python   点击:(31)  评论:(0)  加入收藏
不可不学的Python技巧:字典推导式使用全攻略
Python的字典推导式是一种优雅而强大的工具,用于创建字典(dict)。这种方法不仅代码更加简洁,而且执行效率高。无论你是Python新手还是有经验的开发者,掌握字典推导式都将是你技能...【详细内容】
2024-02-22  子午Python  微信公众号  Tags:Python技巧   点击:(32)  评论:(0)  加入收藏
如何进行Python代码的代码重构和优化?
Python是一种高级编程语言,它具有简洁、易于理解和易于维护的特点。然而,代码重构和优化对于保持代码质量和性能至关重要。什么是代码重构?代码重构是指在不改变代码外部行为的...【详细内容】
2024-02-22  编程技术汇    Tags:Python代码   点击:(32)  评论:(0)  加入收藏
Python开发者必备的八个PyCharm插件
在编写代码的过程中,括号几乎无处不在,以至于有时我们会拼命辨别哪个闭合括号与哪个开头的括号相匹配。这款插件能帮助解决这个众所周知的问题。前言在PyCharm中浏览插件列表...【详细内容】
2024-01-26  Python学研大本营  微信公众号  Tags:PyCharm插件   点击:(84)  评论:(0)  加入收藏
Python的Graphlib库,再也不用手敲图结构了
Python中的graphlib库是一个功能强大且易于使用的工具。graphlib提供了许多功能,可以帮助您创建、操作和分析图形对象。本文将介绍graphlib库的主要用法,并提供一些示例代码和...【详细内容】
2024-01-26  科学随想录  微信公众号  Tags:Graphlib库   点击:(86)  评论:(0)  加入收藏
Python分布式爬虫打造搜索引擎
简单分布式爬虫结构主从模式是指由一台主机作为控制节点负责所有运行网络爬虫的主机进行管理,爬虫只需要从控制节点那里接收任务,并把新生成任务提交给控制节点就可以了,在这个...【详细内容】
2024-01-25  大雷家吃饭    Tags:Python   点击:(58)  评论:(0)  加入收藏
使用Python进行数据分析,需要哪些步骤?
Python是一门动态的、面向对象的脚本语言,同时也是一门简约,通俗易懂的编程语言。Python入门简单,代码可读性强,一段好的Python代码,阅读起来像是在读一篇外语文章。Python这种特...【详细内容】
2024-01-15  程序员不二    Tags:Python   点击:(161)  评论:(0)  加入收藏
Python语言的特点及应用场景, 同其它语言对比优势
Python语言作为一种高级编程语言,具有许多独特的特点和优势,这使得它在众多编程语言中脱颖而出。在本文中,我们将探讨Python语言的特点、应用场景以及与其他语言的对比优势。一...【详细内容】
2024-01-09    今日头条  Tags:Python语言   点击:(251)  评论:(0)  加入收藏
站内最新
站内热门
站内头条