Python操作Sqlite正確實現方法解析

2021-09-06 05:15:16 字數 2499 閱讀 4502

python操作sqlite正確實現方法解析 - python教程 - 新客網

python操作sqlite正確實現方法解析

617 次

python程式語言的優點非常多,它的程式設計特色主要體現在可擴充性方面。那麼,在接下來的這篇文章中,我們將會為大家詳細介紹一下有關python操作sqlite 的相關應用技巧,希望可以給大家帶來些幫助。

一、安裝

二、建立資料庫/開啟資料庫

python操作sqlite使用檔案作為資料庫,你可以指定資料庫檔案的位置。

>>> import sqlite3 >>> cx = sqlite.connect("d:/test.db",  encoding='cp936')

使 用sqlite的connect可以建立乙個資料庫檔案,上面我指明了路徑。當資料庫檔案不存在的時候,它會自動建立。如果已經存在這個檔案,則開啟這個 檔案。encoding指明儲存資料所使用的編碼,這裡cp936是 python 中自帶的編碼,其實就是gbk編碼。cx為資料庫連線物件。

三、運算元據庫的基本物件

3.1 資料庫連線物件

象前面的cx就是乙個資料庫的連線物件,它可以有以下操作:

commit()--事務提交  

rollback()--事務回滾  

close()--關閉乙個資料庫連線  

cursor()--建立乙個游標 

3.2 游標物件

所有sql語句的執行都要在游標物件下進行。

cu = cx.cursor()這樣定義了乙個游標。游標物件有以下的操作:  

execute()--執行sql語句  

executemany--執行多條sql語句  

close()--關閉游標  

fetchone()--從結果中取一條記錄  

fetchmany()--從結果中取多條記錄  

fetchall()--從結果中取出多條記錄  

scroll()--游標滾動 

關於物件的方法可以去 python 主頁上檢視db api的詳細文件。不過pysqlite?到底支援db api到什麼程式,我就不知道了。我列出的操作都是支援的,不過我不是都使用過。

四、使用舉例

4.1 建庫

4.2 建表

>>> cu=cx.cursor() >>> cu.execute("""create table catalog  ( id integer primary key, pid integer, name varchar(10) unique )""")

上面語句建立了乙個叫catalog的表,它有乙個主鍵id,乙個pid,和乙個name,name是不可以重複的。

關於python操作sqlite支援的資料型別,在它主頁上面的文件中有描述,可以參考:version 2 datatypes?

4.3 insert(插入)

>>> cu.execute("insert into catalog values(0, 0, 'name1')")  >>> cu.execute("insert into catalog values(1, 0, 'hello')") >>> cx.commit()

如果你願意,你可以一直使用cu游標物件。注意,對資料的修改必須要使用事務語句:commit()或rollback(),且物件是資料庫連線物件,這裡為cx。

4.4 select(選擇)

>>> cu.execute("select * from catalog") >>> cu.fetchall()  [(0, 0, 'name2'), (1, 0, 'hello')]fetchall() 

返回結果集中的全部資料,結果為乙個tuple的列表。每個tuple元素是按建表的字段順序排列。注意,游標是有狀態的,它可以記錄當前已經取到結果的 第幾個記錄了,因此,一般你只可以遍歷結果集一次。在上面的情況下,如果執行fetchone()會返回為空。這一點在測試時需要注意。

>>> cu.execute("select * from catalog where id = 1")  >>> cu.fetchone() (1, 0, 'hello')

對資料庫沒有修改的語句,執行後不需要再執行事務語句。

4.5 update(修改)

>>> cu.execute("update catalog set name='name2' where id = 0")  >>> cx.commit() >>> cu.execute("select * from catalog")  >>> cu.fetchone() (0, 0, 'name2')4.6 delete(刪除)  

>>> cu.execute("delete from catalog where id = 1") >>> cx.commit()  >>> cu.execute("select * from catalog") >>> cu.fetchall() [(0, 0, 'name2')]

以上是關於如何使用python操作sqlite的簡單示例。

python 操作sqlite用法

sqlite資料庫是非常小巧,非常適用於嵌入式軟體開發,且占用資源非常低。開啟資料庫時返回的物件是乙個資料庫連線物件,它可以有以下操作 commit 事務提交 rollback 事務回滾 close 關閉乙個資料庫連線 cursor 建立乙個游標 游標物件有以下的操作 execute 執行sql語句...

python 連線sqlite及操作

import sqlite3 查詢def load table 連線資料庫 con sqlite3.connect e datebase sqlitestudio park.db 獲得游標 cur con.cursor 查詢整個表 cur.execute select from table list...

Python 操作sqlite資料庫

sqlite是一種輕量級的資料庫,它最大的特點就是無需安裝。資料庫本身以乙個單獨的檔案的形式存放。sqlite只有5種資料型別 null 值是乙個 null 值。integer 值是乙個帶符號的整數,根據值的大小儲存在 1 2 3 4 6 或 8 位元組中。real 值是乙個浮點值,儲存為 8 位元...