溫馨提示×

溫馨提示×

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

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

SQLite5中怎么使用Python來讀寫數(shù)據(jù)庫

發(fā)布時間:2021-12-23 13:33:27 來源:億速云 閱讀:381 作者:iii 欄目:開發(fā)技術

本篇內(nèi)容介紹了“SQLite5中怎么使用Python來讀寫數(shù)據(jù)庫”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

    SQLite支持多種編程語言的開發(fā)調(diào)用:C, C++ , PHP, Perl, Java, C# ,Python, Ruby等。

    本篇先介紹Python語言來調(diào)用SQLite數(shù)據(jù)庫,為什么先介紹Python呢?因為Python用起來十分方便,簡單的幾行代碼,就能夠?qū)崿F(xiàn)我們想要的功能(當然前提是先配置好python的開發(fā)環(huán)境)。

    1 Python讀寫SQLite基本流程

    這里先列舉出Python讀寫SQLite數(shù)據(jù)庫的基本流程:

    SQLite5中怎么使用Python來讀寫數(shù)據(jù)庫

    2 編程實現(xiàn)

    2.1 基本流程

    引入sqlite3依賴包后,首先是連接數(shù)據(jù)庫,調(diào)用的是connect方法:

    fileDB = 'test4.db' # 數(shù)據(jù)庫文件
    conn = sqlite3.connect(fileDB) # 連接數(shù)據(jù)庫

    然后需要創(chuàng)建游標:

    cur = conn.cursor() # 創(chuàng)建游標

    這時,就可以通過execute方法執(zhí)行sql語句了,比如查詢語句:

    sql = 'select * from SCORE' # SQLite語句(查詢數(shù)據(jù))
    cur.execute(sql)

    我們也可以將查詢到的數(shù)據(jù)打印出來:

    print(cur.fetchall())   # 打印所有數(shù)據(jù)

    最后關閉連接

    conn.close() # 關閉連接

    2.2 數(shù)據(jù)插入

    使用python程序連接到數(shù)據(jù)庫后,也可通過程序來實現(xiàn)數(shù)據(jù)插入數(shù)據(jù)庫,只需要繼續(xù)使用execute方法執(zhí)行sql語句即可。

    2.2.1 插入單條數(shù)據(jù)

    有兩種方式可以實現(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ù)庫的修改保存下來:

    # 提交(保存)
    conn.commit()

    3 測試

    3.1 運行python程序

    編寫python程序,插入一些數(shù)據(jù)進行測試。

    執(zhí)行python程序,結果如下:

    SQLite5中怎么使用Python來讀寫數(shù)據(jù)庫

    3.2 命令行查看驗證

    使用命令行來查看數(shù)據(jù)庫,可以發(fā)現(xiàn)數(shù)據(jù)庫中已經(jīng)新增了幾條數(shù)據(jù),說明通過python程序已經(jīng)成功修改了數(shù)據(jù)庫的內(nèi)容。

    SQLite5中怎么使用Python來讀寫數(shù)據(jù)庫

    4 附:完整程序

    完整的python程序如下:

    import sqlite3
    
    fileDB = 'test4.db' # 數(shù)據(jù)庫文件
    sql = 'select * from SCORE' # SQLite語句(查詢數(shù)據(jù))
    
    # 連接數(shù)據(jù)庫
    conn = sqlite3.connect(fileDB)
    
    # 執(zhí)行sql語句
    cur = conn.cursor() # 創(chuàng)建游標
    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()
    
    # 關閉連接
    conn.close()

    “SQLite5中怎么使用Python來讀寫數(shù)據(jù)庫”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

    向AI問一下細節(jié)

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

    AI