python sqlite3 的使用,性
- 2020 年 1 月 7 日
- 筆記
sqlite3 的使用,性能及限制
python 中使用sqlite3
首先是基本的使用:
# coding=utf8 __author__ = 'Administrator' # 導入模組,在 python 中是已經內置了這個模組,所以就不需要安裝而直接使用了 import sqlite3 # 創建資料庫的連接,sqlite 是使用的本地文件進行存儲的,這裡直接打開 conn = sqlite3.connect('path_to_database_name.db', timeout=5) # 對比 mysql 可以進行網路連接資料庫,所以要加上對應的協議,用戶,密碼,地址,資料庫,編碼等構造出類似的連接字元串 # 操作 # 獲取游標 cursor = conn.cursor() # 對於資料庫的表的操作是通過游標進行的,所以在操作之前要獲取游標對象,要注意的是使用完之後進行關閉 # 查詢一個對象 cursor.execute("select * from tb_student where age > ?", (15, )) # 這裡是通過游標執行了一個查詢語句,其中可以通過佔位符進行構造設置相應的參數,很方便不用字元串拼接了。 # 但是表名,還是需要老老實實的寫進去的,佔位符會有異常,這裡是一個坑 # 獲取數據 result = cursor.fetchall() result = cursor.fetchmany(20) result = cursor.fetchone() # 分別是獲取所有,獲取一定數量,獲取一個 # 結果類型是 列表 或元組,元組裡面是對應資料庫里的欄位 # 可以自己進行一下包裝,用 namedtuple 進行命名,就可以像對象獲取屬性一項進行操作!!! # 最後,在操作完成之後一定要關閉連接 conn.close() # 這裡的最佳實踐是用 python 的上下文管理器,這樣就不用每次都去close了
接下來就是它的一些特點:
- 簡潔 api 很簡潔,使用方便易上手
- 輕便 零配置,無需安裝配置管理
- 可嵌入 C語言編寫,精緻小巧嗎,易於嵌入到其他設備
- 無網路 在一些終端使用,很合適
- 快速的 除了在高並發的寫的性能上可能低於mysql postgresql外,其他的都不慢
- 其他還有很多很多
這裡: 此次項目主要是想選擇一個不需要使用網路連接的,小巧的,高效的,數據存儲的一個東西,叮咚,sqlite,正合適!!! 並且 sqlite3 還提供了一些操作介面 ,這就更加方便了!