91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Python中操作Sqlite

發布時間:2021-05-21 18:03:58 來源:億速云 閱讀:177 作者:Leah 欄目:開發技術

怎么在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 建庫

前面已經有了,不再重復。(這些例子,如果你有興趣,可以直接在Python的交互環境下試試)

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主要應用領域有哪些

1、云計算,典型應用OpenStack。2、WEB前端開發,眾多大型網站均為Python開發。3.人工智能應用,基于大數據分析和深度學習而發展出來的人工智能本質上已經無法離開python。4、系統運維工程項目,自動化運維的標配就是python+Django/flask。5、金融理財分析,量化交易,金融分析。6、大數據分析。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿城市| 页游| 贞丰县| 岚皋县| 九江市| 堆龙德庆县| 炉霍县| 岗巴县| 吉隆县| 北碚区| 资兴市| 黄冈市| 邢台县| 吉安县| 布尔津县| 汶川县| 永吉县| 道孚县| 图木舒克市| 兖州市| 龙川县| 荃湾区| 红桥区| 七台河市| 南川市| 大方县| 格尔木市| 安国市| 恭城| 平乡县| 吴旗县| 班玛县| 莎车县| 内江市| 昌乐县| 海丰县| 福州市| 宁夏| 噶尔县| 东源县| 泰顺县|