SQLite5-使用Python來(lái)讀寫(xiě)數(shù)據(jù)庫(kù)
SQLite支持多種編程語(yǔ)言的開(kāi)發(fā)調(diào)用:C
, C++
, PHP
, Perl
, Java
, C#
,Python
, Ruby
等。
本篇先介紹Python語(yǔ)言來(lái)調(diào)用SQLite數(shù)據(jù)庫(kù),為什么先介紹Python呢?因?yàn)镻ython用起來(lái)十分方便,簡(jiǎn)單的幾行代碼,就能夠?qū)崿F(xiàn)我們想要的功能(當(dāng)然前提是先配置好python的開(kāi)發(fā)環(huán)境)。
1 Python讀寫(xiě)SQLite基本流程
這里先列舉出Python讀寫(xiě)SQLite數(shù)據(jù)庫(kù)的基本流程:
2 編程實(shí)現(xiàn)
2.1 基本流程
引入sqlite3
依賴(lài)包后,首先是連接數(shù)據(jù)庫(kù),調(diào)用的是connect方法:
fileDB = 'test4.db' # 數(shù)據(jù)庫(kù)文件 conn = sqlite3.connect(fileDB) # 連接數(shù)據(jù)庫(kù)
然后需要?jiǎng)?chuàng)建游標(biāo):
cur = conn.cursor() # 創(chuàng)建游標(biāo)
這時(shí),就可以通過(guò)execute
方法執(zhí)行sql語(yǔ)句了,比如查詢(xún)語(yǔ)句:
sql = 'select * from SCORE' # SQLite語(yǔ)句(查詢(xún)數(shù)據(jù)) cur.execute(sql)
我們也可以將查詢(xún)到的數(shù)據(jù)打印出來(lái):
print(cur.fetchall()) # 打印所有數(shù)據(jù)
最后關(guān)閉連接
conn.close() # 關(guān)閉連接
2.2 數(shù)據(jù)插入
使用python
程序連接到數(shù)據(jù)庫(kù)后,也可通過(guò)程序來(lái)實(shí)現(xiàn)數(shù)據(jù)插入數(shù)據(jù)庫(kù),只需要繼續(xù)使用execute
方法執(zhí)行sql語(yǔ)句即可。
2.2.1 插入單條數(shù)據(jù)
有兩種方式可以實(shí)現(xiàn)單條數(shù)據(jù)的插入:
# 插入單條數(shù)據(jù) data = "7,70,81,88" cur.execute('insert into SCORE values (%s)' % data) # 方式1 cur.execute("insert into SCORE values(?,?,?,?)", (8, 81, 85, 83)) # 方式2
2.2.2 插入多條數(shù)據(jù)
多條數(shù)據(jù)一起插入,就要使用executemany方法:
# 插入多條數(shù)據(jù) cur.executemany('insert into SCORE values(?,?,?,?)', [(9, 85, 88, 86), (10, 88, 83, 90)])
2.2.3 保存數(shù)據(jù)
最后要調(diào)用commit,才能將數(shù)據(jù)庫(kù)的修改保存下來(lái):
# 提交(保存) conn.commit()
3 測(cè)試
3.1 運(yùn)行python程序
編寫(xiě)python程序,插入一些數(shù)據(jù)進(jìn)行測(cè)試。
執(zhí)行python程序,結(jié)果如下:
3.2 命令行查看驗(yàn)證
使用命令行來(lái)查看數(shù)據(jù)庫(kù),可以發(fā)現(xiàn)數(shù)據(jù)庫(kù)中已經(jīng)新增了幾條數(shù)據(jù),說(shuō)明通過(guò)python程序已經(jīng)成功修改了數(shù)據(jù)庫(kù)的內(nèi)容。
4 附:完整程序
完整的python程序如下:
import sqlite3 fileDB = 'test4.db' # 數(shù)據(jù)庫(kù)文件 sql = 'select * from SCORE' # SQLite語(yǔ)句(查詢(xún)數(shù)據(jù)) # 連接數(shù)據(jù)庫(kù) conn = sqlite3.connect(fileDB) # 執(zhí)行sql語(yǔ)句 cur = conn.cursor() # 創(chuàng)建游標(biāo) cur.execute(sql) # 打印 print(cur.fetchone()) # 打印第1條數(shù)據(jù) print(cur.fetchmany(2)) # 再打印2條數(shù)據(jù) print(cur.fetchall()) # 再打印所有數(shù)據(jù) # 插入單條數(shù)據(jù) data = "7,70,81,88" cur.execute('insert into SCORE values (%s)' % data) # 方式1 cur.execute("insert into SCORE values(?,?,?,?)", (8, 81, 85, 83)) # 方式2 # 插入多條數(shù)據(jù) cur.executemany('insert into SCORE values(?,?,?,?)', [(9, 85, 88, 86), (10, 88, 83, 90)]) # 打印 cur.execute(sql) print('------------') print(cur.fetchall()) # 提交(保存) conn.commit() # 關(guān)閉連接 conn.close()
5 總結(jié)
本篇介紹了如何使用Python語(yǔ)言來(lái)進(jìn)行SQLite數(shù)據(jù)庫(kù)的讀寫(xiě),在嵌入式式開(kāi)發(fā)中,更多的是使用**C/C++**語(yǔ)言進(jìn)行開(kāi)發(fā),因此,下篇我們介紹如何使用C語(yǔ)言來(lái)進(jìn)行SQLite數(shù)據(jù)庫(kù)的讀寫(xiě)。
到此這篇關(guān)于SQLite5-使用Python來(lái)讀寫(xiě)數(shù)據(jù)庫(kù)的文章就介紹到這了,更多相關(guān)Python讀寫(xiě)數(shù)據(jù)庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python中如何使用sqlite3操作SQLite數(shù)據(jù)庫(kù)詳解
- 使用Python連接SQLite數(shù)據(jù)庫(kù)的操作步驟
- 通過(guò)python封裝SQLite3的示例代碼
- Python數(shù)據(jù)庫(kù)編程之SQLite和MySQL的實(shí)踐指南
- Python的sqlite3模塊中常用函數(shù)
- Python中SQLite數(shù)據(jù)庫(kù)的使用
- Python數(shù)據(jù)庫(kù)sqlite3圖文實(shí)例詳解
- Python使用sqlite3第三方庫(kù)讀寫(xiě)SQLite數(shù)據(jù)庫(kù)的方法步驟
- Python練習(xí)之操作SQLite數(shù)據(jù)庫(kù)
- python處理SQLite數(shù)據(jù)庫(kù)的方法
- Pandas使用SQLite3實(shí)戰(zhàn)
相關(guān)文章
Pipenv輕量級(jí)虛擬環(huán)境管理工具使用指南
這篇文章主要為大家介紹了Pipenv輕量級(jí)虛擬環(huán)境管理工具使用指南,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02matlab中二維插值函數(shù)interp2的使用詳解
這篇文章主要介紹了matlab中二維插值函數(shù)interp2的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04python 實(shí)現(xiàn)socket服務(wù)端并發(fā)的四種方式
這篇文章主要介紹了python 實(shí)現(xiàn)socket服務(wù)端并發(fā)的四種方式,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12Python利用wxPython制作股票價(jià)格查詢(xún)工具
在當(dāng)今信息時(shí)代,金融市場(chǎng)是一個(gè)引人注目的話(huà)題。本文將介紹如何使用 Yahoo Finance API、yfinance 模塊和 wxPython 庫(kù)來(lái)創(chuàng)建一個(gè)簡(jiǎn)單的全球股市實(shí)時(shí)價(jià)格查詢(xún)工具,希望大家能夠喜歡2023-05-05python 常見(jiàn)的排序算法實(shí)現(xiàn)匯總
這篇文章主要介紹了python 常見(jiàn)的排序算法,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2020-08-08

徹底吃透理解Python基礎(chǔ)33個(gè)關(guān)鍵字詳細(xì)教程