使用Python对SQLite数据库操作


Posted in Python onApril 06, 2017

SQLite是一种嵌入式数据库,它的数据库就是一个文件。由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用程序中,甚至在IOS和Android的APP中都可以集成。

Python内置了SQLite3,所以,在Python中使用SQLite,不需要安装任何东西,直接使用。

在使用SQLite前,我们先要搞清楚几个概念:

表是数据库中存放关系数据的集合,一个数据库里面通常都包含多个表,比如学生的表,班级的表,学校的表,等等。表和表之间通过外键关联。

要操作关系数据库,首先要连接到数据库,一个数据库连接称为Connection。

连接到数据库后,需要打开游标,称之为Cursor,通过Cursor执行SQL语句,然后,获得执行结果。

一、连接数据库

import sqlite3
#数据库名
db_name = "test.db"
#表名
table_name = "catalog"
conn = sqlite3.connect(db_name)

二、打开游标

rs = conn.cursor()

三、建表

sql = 'create table ' + table_name + ' (id varchar(20) primary key, pid integer, name varchar(10))'
try:
 rs.execute(sql)
 print("建表成功")
except:
 print("建表失败")

四、增,删,改,查操作

# 增:增加三条记录
sql = "Insert into " + table_name + " values ('001', 1, '张三')"
try:
 rs.execute(sql)
 #提交事务
 conn.commit()
 print("插入成功")
except:
 print("插入失败")
sql = "Insert into " + table_name + " values ('002', 2, '李四')"
try:
 rs.execute(sql)
 #提交事务
 conn.commit()
 print("插入成功")
except:
 print("插入失败")
sql = "Insert into " + table_name + " values ('003', 3, '王五')"
try:
 rs.execute(sql)
 #提交事务
 conn.commit()
 print("插入成功")
except:
 print("插入失败")
# 删:删除pid等于3的记录
sql = "Delete from " + table_name + " where pid = 3"
try:
 rs.execute(sql)
 conn.commit()
 print("删除成功")
except:
 print("删除失败")
# 改:将pid等于2的记录的pid改为1
sql = "Update " + table_name + " set pid = 1 where pid = 2"
try:
 rs.execute(sql)
 conn.commit()
 print("修改成功")
except:
 print("修改失败")
# 查
# 查询数据库中所有表名
sql = "Select name From sqlite_master where type = 'table'"
res = rs.execute(sql)
print(res.fetchall())
# 查询表中所有记录
sql = "Select * from " + table_name
try: 
 res = rs.execute(sql)
 print(res.fetchall())
except:
 print([])

五、关闭游标

rs.close()

六、关闭数据库连接

conn.close()

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Python 相关文章推荐
Python字符串、元组、列表、字典互相转换的方法
Jan 23 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
Nov 17 Python
Python使用三种方法实现PCA算法
Dec 12 Python
Python元组及文件核心对象类型详解
Feb 11 Python
对numpy中的transpose和swapaxes函数详解
Aug 02 Python
Pycharm 2019 破解激活方法图文详解
Oct 11 Python
如何在VSCode上轻松舒适的配置Python的方法步骤
Oct 28 Python
python已协程方式处理任务实现过程
Dec 27 Python
Python实现搜索算法的实例代码
Jan 02 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
Mar 11 Python
Python3 pickle对象串行化代码实例解析
Mar 23 Python
使用Tensorflow-GPU禁用GPU设置(CPU与GPU速度对比)
Jun 30 Python
使用Python对MySQL数据操作
Apr 06 #Python
windows 10下安装搭建django1.10.3和Apache2.4的方法
Apr 05 #Python
Python使用迭代器捕获Generator返回值的方法
Apr 05 #Python
由浅入深讲解python中的yield与generator
Apr 05 #Python
Python中shutil模块的学习笔记教程
Apr 04 #Python
python 遍历字符串(含汉字)实例详解
Apr 04 #Python
python模拟登录并且保持cookie的方法详解
Apr 04 #Python
You might like
php模拟post行为代码总结(POST方式不是绝对安全)
2012/02/22 PHP
PHP获取http请求的头信息实现步骤
2012/12/16 PHP
Yii框架小部件(Widgets)用法实例详解
2020/05/15 PHP
鼠标经过tr时,改变tr当前背景颜色
2014/01/13 Javascript
jQuery提示效果代码分享
2014/11/20 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
JS+CSS实现另类带提示效果的竖向导航菜单
2015/10/15 Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
2016/02/26 Javascript
详解JavaScript中双等号引起的隐性类型转换
2016/05/30 Javascript
validationEngine 表单验证插件使用实例代码
2017/06/15 Javascript
vue2.0 实现页面导航提示引导的方法
2018/03/13 Javascript
element-ui 中使用upload多文件上传只请求一次接口
2019/07/19 Javascript
vue-socket.io跨域问题有效解决方法
2020/02/11 Javascript
微信小程序个人中心的列表控件实现代码
2020/04/26 Javascript
JSONP 的原理、理解 与 实例分析
2020/05/16 Javascript
[09:43]DOTA2每周TOP10 精彩击杀集锦vol.5
2014/06/25 DOTA
python 字符串格式化代码
2013/03/17 Python
Python实现求两个csv文件交集的方法
2017/09/06 Python
Python爬虫PyQuery库基本用法入门教程
2018/08/04 Python
python调用opencv实现猫脸检测功能
2019/01/15 Python
Python read函数按字节(字符)读取文件的实现
2019/07/03 Python
python实现定时发送邮件
2020/12/23 Python
怎样实现H5+CSS3手指滑动切换图片的示例代码
2019/05/05 HTML / CSS
迪斯尼商品官方网站:ShopDisney
2016/08/01 全球购物
HOTEL INFO英国:搜索全球酒店
2019/08/08 全球购物
Java的for语句中break, continue和return的区别
2013/12/19 面试题
烹调加工管理制度
2014/02/04 职场文书
超市国庆节促销方案
2014/02/20 职场文书
《数星星的孩子》教学反思
2014/04/11 职场文书
竞选学习委员演讲稿
2014/04/28 职场文书
端午节活动总结
2014/08/26 职场文书
2014年班组工作总结
2014/11/20 职场文书
python将图片转为矢量图的方法步骤
2021/03/30 Python
Mysql 设置boolean类型的操作
2021/06/04 MySQL
利用js实现简单开关灯代码
2021/11/23 Javascript
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers