很簡單:
存數據:
1、加載sqlite3驅動(只需一行代碼)
2、用驅動執行查詢語句(只需一行代碼)
取數據:
1、加載sqlite3驅動(只需一行代碼)
2、用驅動執行查詢語句(只需一行代碼)
乍一看,sqlite存取數據方式似乎都一樣,實際上,就是一樣,廢話不多說
上例子:
1、存以下內容:
1
|
s
=
[
'Alice'
,
'Joker'
,
'張三'
,
'王五'
]
|
2、先建立數據庫,再在數據庫中建一個數據表:
1
|
conn
=
sqlite3.connect(
'SqliteDatebase.db'
)
#建立數據庫,數據庫名為'SqliteDatebase.db',且加載sqlite3驅動(若數據庫已存在,則不會創建新庫,不存在則創建該數據庫)<br>conn.execute('CREATE TABLE if not exists name_table(name char)') #數據庫驅動執行創建語句,創建名為'name_table'的數據表,且指定表中一列的列名為'name'(該創建語句的意思是如果'name_table'表格不存在,則創建新表,否則不創建)
|
3、就是這樣的表格
4、接着開始進入重頭戲:存數據
1
2
|
for
i
in
s:
conn.execute(
'insert into name_table(name) values(?)'
,(i,))
#這里接着上面代碼寫,所以不用重復加載sqlite3驅動conn,這里直接用,'?'是占位符,代表后面的數據'i'
|
沒錯,就這么簡單
5、接着開始第二重頭戲:取數據
1
2
3
|
rs
=
conn.execute(
'SELECT * FROM name_table'
)
#用驅動conn執行查詢語句,返回結果集存在rs中
for
i
in
rs:
print
(i[
0
])
#遍歷結果集,打印出結果
|
相同的簡單
6、最后,奉上運行結果:
用database打開數據庫查看:
https://www.cnblogs.com/wangyongfengxiaokeai/p/11963405.html
最最后,完整代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
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()
#關閉數據庫
|