python中sqlite3對資料庫的增刪改查
阿新 • • 發佈:2019-01-03
1、python API的介紹
(1)connection --- 資料庫連線物件
連線物件:建立python客戶端與資料庫的網路連線 建立方法:sqlite3.connect(引數)(2)cursor --- 遊標物件
2、增刪改查的流程
select語句
insert/upgrade/delete語句3、舉例介紹
下面建立一個關係型資料庫,為一個書店儲存書的分類和價格。資料庫中包含兩個表:category用於記錄分類,book用於記錄某個書的資訊。一本書歸屬於某一個分類,因此book有一個外來鍵(foreign key),指向catogory表的主鍵id。
建立資料庫:
第一步,建立資料庫及資料庫的表,在使用connect()連線資料庫後,就可以通過定位指標cursor
SQLite的資料庫是一個磁碟上的檔案,如上面的test.db,因此整個資料庫可以方便的移動或複製。test.db一開始不存在,所以SQLite將自動建立一個新檔案。
利用execute()命令,執行兩個SQL命令,建立資料庫中的兩個表。建立完成後,儲存並斷開資料庫連線
插入資料insert:
上面建立了資料庫和表,確立了資料庫的抽象結構。下面將在同一資料庫中插入資料:
插入資料同樣可以使用execute()來執行完整的SQL語句。SQL語句中的引數,使用"?"作為替代符號,並在後面的引數中給出具體值。這裡不能用Python的格式化字串,如"%s",因為這一用法容易受到SQL注入攻擊。
也可以用executemany()的方法來執行多次插入,增加多個記錄。每個記錄是表中的一個元素,如上面的books表中的元素。
查詢資料select
在執行查詢語句後,Python將返回一個迴圈器,包含有查詢獲得的多個記錄。可以迴圈讀取,也可以使用sqlite3提供的fetchone()和fetchall()方法讀取記錄:
更新與刪除update/delete
可以更新某個記錄,或者刪除記錄:
也可以直接刪除整張表:c.execute('DROP TABLE book')
4、增刪改查及異常處理