当前位置:首页 > 数码 > SQLite-高效的嵌入式数据库处置打算-Python-一种轻量级-内置的-数据库 (sqlite学习)

SQLite-高效的嵌入式数据库处置打算-Python-一种轻量级-内置的-数据库 (sqlite学习)

admin12个月前 (05-06)数码109
DBM(DataBaseManager)是一种文件系统,专门用于键值对的存储,最后是在Unix平台成功,如今其它平台也可以用。关于KV模型,DBM提供了一个轻量级、高效的存储处置打算。

总的来说,DBM具备如下特点:

而Python规范库提供了一个dbm模块,它成功了DBM文件系统的性能,来看一下它的用法。

importdbm#第一个参数是文件名#第二个参数是形式,有以下几种#r:只读,要求文件必定存在,自动就是这个形式#w:可读可写,要求文件必定存在#c:可读可写,文件不存在会创立,存在则追加#n:可读可写,文件不存在会创立,存在则清空#第三个参数是权限,用八进制数字示意,自动0o666,即可读可写无法口头db=dbm.open("store","c")#关上文件就可以存储值了,key和value必定是字符串或bytes对象db["name"]="Sせんせい"db["age"]="18"db[b"corporation"]="小摩".encode("utf-8")#封锁文件,将内容写到磁盘上db.close()

十分繁难,就像操作字典一样,并且key是惟一的,假设存在则交流。口头完后,以后目录会多出一个store.db文件。

咱们关上它,而后读取刚才写入的键值对。

importdbmdb=dbm.open("store","c")#失掉一切的key,间接前往一个列表print(db.keys())"""[b'corporation',b'name',b'age']"""#判别一个key能否存在,key可以是字符串或bytes对象print("name"indb,"NAME"indb)"""TrueFalse"""#失掉一个key对应的value,失掉的是bytes对象print(db["name"].decode("utf-8"))print(db[b"corporation"].decode("utf-8"))"""Sせんせい小摩"""#key假设不存在,会抛出KeyError,咱们可以经常使用get方法print(db.get("NAME",b"unknown"))"""b'unknown'"""#当然也可以经常使用setdefault方法,key不存在时,智能写出来print(db.setdefault("gender",b"female"))"""b'female'"""print(db["gender"])"""b'female'"""

十分繁难,当你须要存储的数据量不适宜放在内存中,但又没必要引入数据库,那么无妨试试经常使用dbm模块吧。

内置的

当然啦,dbm只管很繁难,但它只能耐久化bytes对象,字符串也是转成bytes对象之后再存储的。所以除了dbm之外,还有一个规范库模块shelve,它可以耐久化恣意对象。

shelve的经常使用方式和dbm简直是分歧的,区别就是shelve的序列化才干要更强,当然速度人造也就慢一些。

importshelve#第二个参数示意形式,自动是c#因此文件不存在会创立,存在则追加sh=shelve.open("shelve")sh["name"]=["S教员","高教员","电烤

Python语言 SQLite怎么用内存数据库解决插入数据时速度慢的问题?

添加主键,建议主键是id 为int型的自增,这样可以显著的提高数据的插入和删除速度

python用来操作sqlite数据库的标准库是

sqlite3。 sqlite3是Python的一个内置模块,专门用于对SQLite数据库进行操作。 SQLite是一个C语言库,提供轻量级的磁盘上数据库系统。 SQLite是一个文件型数据库,不依赖外部服务,适合单机或者小型项目使用。 通过sqlite3模块,Python程序可以创建、查询、更新和删除SQLite数据库中的数据。

免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。

标签: Python

“SQLite-高效的嵌入式数据库处置打算-Python-一种轻量级-内置的-数据库 (sqlite学习)” 的相关文章

b-b-个入门建议!-Python-技术书籍推荐-附赠-11 (b+b+b等于什么)

b-b-个入门建议!-Python-技术书籍推荐-附赠-11 (b+b+b等于什么)

近年来,Python 持续火爆,越来越多的人开始入门学习 Python。RealPython 作为最受好评的 Python 学习网站,拥有超百万的浏览量,以下是 RealPython 的开发者给...

Python中的Random模块-摸索随机性的神奇环球 (python编程)

Python中的Random模块-摸索随机性的神奇环球 (python编程)

随机性在计算机编程和数据迷信中表演着至关关键的角色。/target=_blankclass=infotextkey>Python中的random模块提供了丰盛的工具和函数,协助咱们生成随机数...

一份收藏者必备清单-100个精选Python库 (收藏者的心态)

一份收藏者必备清单-100个精选Python库 (收藏者的心态)

/target=_blankclass=infotextkey>Python为啥这么火,这么多人学,就是由于繁难好学,性能弱小,整个社区十分生动,资料很多。而且这言语触及了方方面面,比如智能...

掌握网络世界的无限可能-Python分布式爬虫助力搜索引擎打造 (掌握网络世界的好处)

掌握网络世界的无限可能-Python分布式爬虫助力搜索引擎打造 (掌握网络世界的好处)

主从模式 主从模式是一种简单的分布式爬虫架构,其中一台主机作为控制节点,负责管理所有运行爬虫的从机。 主节点负责向从机分配任务,并接收新生成的任务。从机只需要从主节点接收任务,并把新生...

轻松把握多线程和多进程-Python编程进阶 (多线是什么意思)

轻松把握多线程和多进程-Python编程进阶 (多线是什么意思)

1、简介 咱们将讨论如何应用/target=_blankclass=infotextkey>Python口头多线程和多进程义务。它们提供了在单个进程或多个进程之间口头并发操作的方法。并...

五分钟内完成个性化-GUI-计算器搭建-Python (五分钟内完成的动物实验)

五分钟内完成个性化-GUI-计算器搭建-Python (五分钟内完成的动物实验)

这个简单的教程将指导你如何在 Python 中使用 Tkinter 轻松制作一个全功能的 GUI 计算器。 7 8...

网络-摸索Python中的必备模块-解锁数据处置-迷信计算等畛域的弱小工具-自动化 (网络mod)

网络-摸索Python中的必备模块-解锁数据处置-迷信计算等畛域的弱小工具-自动化 (网络mod)

/target=_blankclass=infotextkey>Python罕用的模块十分多,关键分为内置模块和第三方模块两大类,且不同模块运行场景不同又可以分为文本类、数据结构类、数学运算...

内置数据库-的长处和运行-SQLite-轻量级-Python (内置数据库)

内置数据库-的长处和运行-SQLite-轻量级-Python (内置数据库)

/target=_blankclass=infotextkey>Python是一种盛行的编程言语,可以用于开发各种运行程序,从图形用户界面到网站和游戏。Python的一个特点是,它内置了一个...