使用Python对SQLite数据库操作
Python  /  管理员 发布于 7年前   147
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改为1sql = "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_nametry: res = rs.execute(sql) print(res.fetchall())except: print([])五、关闭游标
rs.close()
六、关闭数据库连接
conn.close()
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号
