宿舍 2019-11-30
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() #关闭数据库