几行代码轻松搞定python的sqlite3的存取
2024-09-01 18:36:10
很简单:
存数据:
1、加载sqlite3驱动(只需一行代码)
2、用驱动执行查询语句(只需一行代码)
取数据:
1、加载sqlite3驱动(只需一行代码)
2、用驱动执行查询语句(只需一行代码)
乍一看,sqlite存取数据方式似乎都一样,实际上,就是一样,废话不多说
上例子:
1、存以下内容:
s=['Alice','Joker','张三','王五']
2、先建立数据库,再在数据库中建一个数据表:
conn=sqlite3.connect('SqliteDatebase.db') #建立数据库,数据库名为'SqliteDatebase.db',且加载sqlite3驱动(若数据库已存在,则不会创建新库,不存在则创建该数据库)conn.execute('CREATE TABLE if not exists name_table(name char)') #数据库驱动执行创建语句,创建名为'name_table'的数据表,且指定表中一列的列名为'name'(该创建语句的意思是如果'name_table'表格不存在,则创建新表,否则不创建)
3、就是这样的表格
4、接着开始进入重头戏:存数据
for i in s: conn.execute('insert into name_table(name) values(?)',(i,)) #这里接着上面代码写,所以不用重复加载sqlite3驱动conn,这里直接用,'?'是占位符,代表后面的数据'i'
没错,就这么简单
5、接着开始第二重头戏:取数据
rs=conn.execute('SELECT * FROM name_table') #用驱动conn执行查询语句,返回结果集存在rs中 for i in rs: print(i[0]) #遍历结果集,打印出结果
相同的简单
6、最后,奉上运行结果:
用database打开数据库查看:
最最后,完整代码:
import sqlite3 s=['Alice','Joker','张三','王五'] conn=sqlite3.connect('SqliteDatebase.db') conn.execute('CREATE TABLE if not exists name_table(name char)') for i in s: conn.execute('insert into name_table(name) values(?)',(i,)) rs=conn.execute('SELECT * FROM name_table') for i in rs: print(i[0]) conn.commit() #提交请求,否则数据库的变动不会执行 conn.close() #关闭数据库
最新文章
- PHP两种基础的算法:冒泡、快速排序法》》》望能够帮助到大家
- C#: using JsonReader avoid Deserialize Json to dynamic
- [课程设计]Scrum 1.1 NABCD模型&;产品Backlog
- Js之AJAX
- eclipse +VISUALSVN SERVER 创建版本控制器,防止误操作(可视化操作,简单方便,不需要修改配置文件)
- 高效快捷解决一个TextView显示多种字体的控件SpannableTextView
- [LeetCode]题解(python):063-Unique path II
- 第四周 更新Scrum站立会议
- SOA_环境安装系列1_Oracle SOA Suite11g安装总括(案例)
- spring中文乱码过滤器
- 0c-41-ARC下循环引用问题
- 【转】visual studio 2012进行C语言开发[图文]
- Openjudge-计算概论(A)-数组顺序逆放
- 给定一个数列a1,a2,a3,...,an和m个三元组表示的查询,对于每个查询(i,j,k),输出ai,ai+1,...,aj的升序排列中第k个数。
- L2-2 小字辈 (25 分)
- JAVA----线程初级
- Kb和KB的区别
- python中和生成器协程相关的yield之最详最强解释,一看就懂(一)
- Java 搜索引擎
- 严格别名规则“-fstrict-aliasing”和“-fno-strict-aliasing”及类型双关