Windows平台Python连接sqlite3数据库的方法分析


Posted in Python onJuly 12, 2017

本文实例讲述了Windows平台Python连接sqlite3数据库的方法。分享给大家供大家参考,具体如下:

之前没有接触过sqlite数据库,只是听到同事聊起这个。

有一次,手机端同事让我帮着写个sql,后面说运行不了报错了,我问是什么数据库,同事说是sqlite,这才知道了还有sqlite这个数据库。。。

接下来说说Python连接sqlite数据库,非常简单,因为python中的sqlite模块也遵循了DB-API 2.0的规范,所以操作起来和sql server、MySQL、oracle数据库都是一样的。

一、在 Windows 上安装 SQLite:

(1)请访问 SQLite 下载页面,从 Windows 区下载预编译的二进制文件:http://www.sqlite.org/download.html

(2)因为我的win 7是64位的,所以下载 sqlite-shell-win64-*.zip 和 sqlite-dll-win64-*.zip 压缩文件,如果你的系统是32位的就下载32位的版本。

(3)创建文件夹 C:\sqlite,并在此文件夹下解压上面两个压缩文件,将得到 sqlite3.def、sqlite3.dll 和 sqlite3.exe 文件。

(4)添加 C:\sqlite 到 PATH 环境变量,最后在命令提示符下,使用 sqlite3 命令,将显示如下结果:

C:\Users\Administrator>sqlite3
SQLite version 3.15.2 2016-11-28 19:13:37
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite>

二、创建一个数据库test.db

直接用命令行sqlite3创建数据库,然后用命令.database 查询系统中的数据库。

C:\Users\Administrator>sqlite3 test.db
SQLite version 3.15.2 2016-11-28 19:13:37
Enter ".help" for usage hints.
sqlite> .database
seq name       file
--- --------------- ----------------------------------------------------------
0  main       C:\Users\Administrator\test.db

注意:不要退出,因为接下来python要连接数据库(最后关闭数据库时,可以用.quit 命令退出sqlite3)。

三、python连接sqlite3

python中内置了sqlite模块,所以不需要安装,导入后就可以直接用。

需要特别注意的是,要把编写好的程序文件放到 test.db数据库相同的目录,这里是:C:\Users\Administrator,否则会发现程序中会创建一个新的test.db,并且是在当前程序运行的目录下,就查看不到数据库的变化了。

# -*- coding:gbk -*-
import sqlite3
conn = sqlite3.connect('test.db')
cur = conn.cursor()
cur.execute('create table t(id int,v varchar(20));');
cur.execute("insert into t values(%d,'%s')" % (1,'xxx'))
cur.execute("insert into t values(%d,'%s')" % (2,'yyy'))
cur.execute("update t set v = '%s' where id = %d" % ('zzz',2))
cur.execute("select * from t;")
results = cur.fetchall()
for row in results:
  print row
conn.commit()
cur.close()
conn.close()

每条数据都是一个元祖,所有记录组成了一个列表。

输出结果:

================ RESTART: C:\Users\Administrator\Desktop\r.py ================
(1, u'xxx')
(2, u'zzz')

代码非常简单,其实python连接sqlite3就是这么的简单

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

Python 相关文章推荐
python分析nignx访问日志脚本分享
Feb 26 Python
python根据时间生成mongodb的ObjectId的方法
Mar 13 Python
Python实现统计英文单词个数及字符串分割代码
May 28 Python
利用python获取某年中每个月的第一天和最后一天
Dec 15 Python
python增加矩阵维度的实例讲解
Apr 04 Python
Python批量合并有合并单元格的Excel文件详解
Apr 05 Python
快速解决PyCharm无法引用matplotlib的问题
May 24 Python
Python实现随机创建电话号码的方法示例
Dec 07 Python
Python数据类型之Set集合实例详解
May 07 Python
Numpy 中的矩阵求逆实例
Aug 26 Python
pytorch中nn.Conv1d的用法详解
Dec 31 Python
pycharm 快速解决python代码冲突的问题
Jan 15 Python
python 中split 和 strip的实例详解
Jul 12 #Python
Python实现简单的获取图片爬虫功能示例
Jul 12 #Python
python文件特定行插入和替换实例详解
Jul 12 #Python
梯度下降法介绍及利用Python实现的方法示例
Jul 12 #Python
python3之微信文章爬虫实例讲解
Jul 12 #Python
python脚本替换指定行实现步骤
Jul 11 #Python
Python书单 不将就
Jul 11 #Python
You might like
PHP+Mysql基于事务处理实现转账功能的方法
2015/07/08 PHP
php模板引擎技术简单实现
2016/03/15 PHP
redis+php实现微博(二)发布与关注功能详解
2019/09/23 PHP
javascript &&和||运算法的另类使用技巧
2009/11/28 Javascript
javascript获取url上某个参数的方法
2013/11/08 Javascript
原生javascript实现无间缝滚动示例
2014/01/28 Javascript
JS实现div居中示例
2014/04/17 Javascript
我的Node.js学习之路(四)--单元测试
2014/07/06 Javascript
Egret引擎开发指南之创建项目
2014/09/03 Javascript
jquery使用slideDown实现模块缓慢拉出效果的方法
2015/03/27 Javascript
jqueryMobile使用示例分享
2016/01/12 Javascript
初步使用bootstrap快速创建页面
2016/03/03 Javascript
针对后台列表table拖拽比较实用的jquery拖动排序
2016/10/10 Javascript
webpack+vue.js实现组件化详解
2016/10/12 Javascript
express文件上传中间件Multer详解
2016/10/24 Javascript
vue路由拦截及页面跳转的设置方法
2018/05/24 Javascript
js正则表达式校验指定字符串的方法
2018/07/23 Javascript
浅谈VUE-CLI脚手架热更新太慢的原因和解决方法
2018/09/28 Javascript
用node开发并发布一个cli工具的方法步骤
2019/01/03 Javascript
Vue 使用formData方式向后台发送数据的实现
2019/04/14 Javascript
详解Webpack如何引入CDN链接来优化编译后的体积
2019/06/21 Javascript
PHP读取远程txt文档到数组并实现遍历
2020/08/25 Javascript
[49:17]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第三场 1月26日
2021/03/11 DOTA
Python 中Django验证码功能的实现代码
2019/06/20 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
pytorch载入预训练模型后,实现训练指定层
2020/01/06 Python
Python @property装饰器原理解析
2020/01/22 Python
Python装饰器的应用场景代码总结
2020/04/10 Python
Anaconda的安装及其环境变量的配置详解
2020/04/22 Python
基于 HTML5 Canvas实现 的交互式地铁线路图
2018/03/05 HTML / CSS
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
香港中原电器网上商店:Chung Yuen
2019/06/26 全球购物
弘扬职业精神演讲稿
2014/03/20 职场文书
基层党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
产品调价通知函
2015/04/20 职场文书
Python语言中的数据类型-序列
2022/02/24 Python