专栏首页python3python sqlite3 的使用,性

python sqlite3 的使用,性

sqlite3 的使用,性能及限制

python 中使用sqlite3

首先是基本的使用:

# coding=utf8
__author__ = 'Administrator'

# 导入模块,在 python 中是已经内置了这个模块,所以就不需要安装而直接使用了
import sqlite3

# 创建数据库的连接,sqlite 是使用的本地文件进行存储的,这里直接打开
conn = sqlite3.connect('path_to_database_name.db', timeout=5)

# 对比 mysql 可以进行网络连接数据库,所以要加上对应的协议,用户,密码,地址,数据库,编码等构造出类似的连接字符串

# 操作

# 获取游标
cursor = conn.cursor()
# 对于数据库的表的操作是通过游标进行的,所以在操作之前要获取游标对象,要注意的是使用完之后进行关闭

# 查询一个对象
cursor.execute("select * from tb_student where age > ?", (15, ))
# 这里是通过游标执行了一个查询语句,其中可以通过占位符进行构造设置相应的参数,很方便不用字符串拼接了。
# 但是表名,还是需要老老实实的写进去的,占位符会有异常,这里是一个坑

# 获取数据
result = cursor.fetchall()
result = cursor.fetchmany(20)
result = cursor.fetchone()
# 分别是获取所有,获取一定数量,获取一个
# 结果类型是 列表 或元组,元组里面是对应数据库里的字段
# 可以自己进行一下包装,用 namedtuple 进行命名,就可以像对象获取属性一项进行操作!!!

# 最后,在操作完成之后一定要关闭连接
conn.close()
# 这里的最佳实践是用 python 的上下文管理器,这样就不用每次都去close了

接下来就是它的一些特点:

  • 简洁    api 很简洁,使用方便易上手
  • 轻便    零配置,无需安装配置管理
  • 可嵌入    C语言编写,精致小巧吗,易于嵌入到其他设备
  • 无网络    在一些终端使用,很合适
  • 快速的    除了在高并发的写的性能上可能低于mysql postgresql外,其他的都不慢
  • 其他还有很多很多

这里:         此次项目主要是想选择一个不需要使用网络连接的,小巧的,高效的,数据存储的一个东西,叮咚,sqlite,正合适!!!         并且 sqlite3 还提供了一些操作接口 ,这就更加方便了!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Jetty启动过程

    Connector 的实现类 ServerConnector 中,有一个_acceptors的数组,在 Connector 启动的时候, 会根据_accepto...

    斯武丶风晴
  • 同步 异步 阻塞 非阻塞

    同步和阻塞完全不是一件事,是否同步指的是获取返回结果的方式,是否阻塞指的是等待获取结果的时间内是否可以干其他事情

    东营浪人
  • 互联网公司为啥不使用mysql分区表?(一分钟系列)

    缘起:有个朋友问我分区表在58的应用,我回答不出来,在我印象中,百度、58都没有听说有分区表相关的应用,业内进行一些技术交流的时候也更多的是自己分库分表,而不是...

    海涛
  • Linux下快速构建Android编译环境

    通常,开发苹果系列的软件均需要使用一些专有开发工具,比如xcode,而此工具必须运行在Mac OS X设备上(当然你也可以尝试各种黑苹果的方式),所以不论是对于...

    BG彪
  • DisGeNet:疾病相关的基因与突变位点数据库

    DisGeNet是一个专门收录人类疾病相关的基因与突变位点信息的数据库,对应的文章发表在Nucleic Acids Research上,链接如下

    生信修炼手册
  • TANRIC:肿瘤相关lncRNA数据库

    TANRIC整合了来自TCGA, CCLE等大型肿瘤研究项目的数据,对多种肿瘤的lncRNA表达量进行分析,差异分析,并对lncRNA与临床信息,基因组等数据进...

    生信修炼手册
  • postgrep修改存储目录

    yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x...

    东营浪人

扫码关注云+社区

领取腾讯云代金券