全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】

本文实例讲述了Python操作SQLite数据库的方法。分享给大家供大家参考,具体如下:

SQLite简介

SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起MySQL、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至2015年已经有15个年头,SQLite也迎来了一个版本 SQLite 3已经发布。

SQLite数据库的使用

1.导入Python SQLite数据库模块

python2.5版本以后内置SQLite数据库

import sqlite3

2. 创建/打开数据库

调用connect函数的时候,指定库名称,如果指定的数据库存在就直接打开这个数据库,如果不存在就新创建一个再打开

conn = sqlite3.connect("E:/test.db")

或者也可以在内存中创建

conn = sqlite3.connect(":memory:")

3.数据库连接对象

打开数据库时返回的对象conn就是一个数据库连接对象,它可以有以下操作:

commit()--事务提交
rollback()--事务回滚
close()--关闭一个数据库连接
cursor()--创建一个游标

关于commit(),如果isolation_level隔离级别默认,那么每次对数据库的操作,都需要使用该命令,你也可以设置isolation_level=None,这样就变为自动提交模式。

4.使用游标查询数据库

我们需要使用游标对象SQL语句查询数据库,获得查询对象。 通过以下方法来定义一个游标。

cu=conn.cursor()

游标对象有以下的操作:

execute()--执行sql语句
executemany--执行多条sql语句
close()--关闭游标
fetchone()--从结果中取一条记录,并将游标指向下一条记录
fetchmany()--从结果中取多条记录
fetchall()--从结果中取出所有记录
scroll()--游标滚动

SQLite数据库操作

1. 创建数据库表

cu.execute("create table user (id integer primary key,name varchar(20) UNIQUE,age integer,comment text NULL)")
# 创建一张user表,表中有id(主键),名字(唯一),年龄,备注(默认为空)

2. 插入数据

请注意避免以下写法:

# 这样写会导致注入攻击
pid=200
c.execute("... where id= '%s'" % id)

正确的做法如下,如果t只是单个数值,也要采用t=(n,)的形式,因为元组是不可变的。

for user in[(0,'aaa',111,'aaaa'),(1,'bbb',222,'bbbb')]:
 conn.execute("insert into user values (?,?,?,?)", user) # 注意user是元组,不可变
conn.commit() # 注意插入操作之后要进行提交

3. 查询数据

cu.execute("select * from user")
cu.fetchone() # 得到游标的第一个值
cu.execute("select * from user")
cu.fetchall() # 使用游标的fetch函数,fetchall得到所有的查询记录

4. 修改数据

cu.execute("update user set name='ccc' where id = 0")
conn.commit()

5. 删除数据

cu.execute("delete from user where id = 1")
conn.commit()

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。


# Python  # SQLite数据库  # Python3实现连接SQLite数据库的方法  # python 操作sqlite数据库的方法  # Python SQLite3数据库操作类分享  # Python读取sqlite数据库文件的方法分析  # Python开发SQLite3数据库相关操作详解【连接  # 查询  # 插入  # 更新  # 删除  # 关闭等】  # Python操作SQLite数据库的方法详解  # 使用Python对SQLite数据库操作  # Python版SQLite数据库从入门到综合运用案例(附详细演示)  # 第一个  # 操作技巧  # 创建一个  # 多条  # 中取  # 进阶  # 数据库管理系统  # 相关内容  # 也要  # 中有  # 它是  # 感兴趣  # 数据结构  # 给大家  # 并将  # 不存在  # 请注意  # 它可以  # 只需要  # 都快 


相关文章: c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  制作证书网站有哪些,全国城建培训中心证书查询官网?  如何做网站制作流程,*游戏网站怎么搭建?  ,网站推广常用方法?  购物网站制作公司有哪些,哪个购物网站比较好?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  制作网站的基本流程,设计网站的软件是什么?  香港服务器如何优化才能显著提升网站加载速度?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  教学网站制作软件,学习*后期制作的网站有哪些?  专业商城网站制作公司有哪些,pi商城官网是哪个?  网站专业制作公司有哪些,做一个公司网站要多少钱?  如何选择网络建站服务器?高效建站必看指南  建站之星展会模板:智能建站与自助搭建高效解决方案  建站之星会员如何解锁更多建站功能?  表情包在线制作网站免费,表情包怎么弄?  h5网站制作工具有哪些,h5页面制作工具有哪些?  如何基于云服务器快速搭建个人网站?  学校免费自助建站系统:智能生成+拖拽设计+多端适配  css网站制作参考文献有哪些,易聊怎么注册?  如何在腾讯云服务器上快速搭建个人网站?  如何在Windows环境下新建FTP站点并设置权限?  C++如何使用std::optional?(处理可选值)  如何用PHP工具快速搭建高效网站?  专业公司网站制作公司,用什么语言做企业网站比较好?  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  高防服务器:AI智能防御DDoS攻击与数据安全保障  如何在VPS电脑上快速搭建网站?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  实现虚拟支付需哪些建站技术支撑?  建站10G流量真的够用吗?如何应对访问高峰?  宝塔Windows建站如何避免显示默认IIS页面?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  如何快速搭建高效可靠的建站解决方案?  建站之星代理商如何保障技术支持与售后服务?  如何通过西部数码建站助手快速创建专业网站?  linux top下的 minerd 木马清除方法  一键网站制作软件,义乌购一件代发流程?  如何快速生成可下载的建站源码工具?  如何在橙子建站上传落地页?操作指南详解  怀化网站制作公司,怀化新生儿上户网上办理流程?  宝塔新建站点报错如何解决?  学校建站服务器如何选型才能满足性能需求?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  如何快速辨别茅台真假?关键步骤解析  如何高效配置香港服务器实现快速建站?  如何在IIS中新建站点并配置端口与物理路径?  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  建站之星×万网:智能建站系统+自助建站平台一键生成 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。