2025年最新Python操作SQLite數據庫完全指南

學習如何使用Python操作SQLite數據庫

目錄

使用 Python 操作 SQLite 數據庫

SQLite 是一個輕量級的資料庫,它不需要安裝任何服務,只需要一個檔案就可以建立一個資料庫。這使得它成為許多應用程式的預設資料庫,例如網頁瀏覽器、電子郵件客戶端和移動應用程式。

在本文中,我們將介紹如何使用 Python 來操作 SQLite 數據庫,並提供完整的實作範例和最佳實踐。

安裝 SQLite

在大多數情況下,SQLite 已經預安裝在 Python 環境中。如果您需要確認,可以透過以下命令檢查:

python -c "import sqlite3; print(sqlite3.version)"

若尚未安裝,您可以使用 pip 安裝 SQLite 的 Python 模組(注意:sqlite3 是 Python 的標準庫,通常不需要單獨安裝):

pip install pysqlite3

使用 Python 連接到 SQLite 數據庫

要使用 Python 連接到 SQLite 數據庫,首先需要導入 sqlite3 模組:

import sqlite3

接著,使用 connect() 方法來連接到 SQLite 數據庫。如果資料庫檔案不存在,SQLite 將會自動創建一個新的資料庫:

conn = sqlite3.connect('database.db')

連接成功後,您可以使用 cursor() 方法來建立一個游標對象,然後使用該對象來執行 SQL 指令:

cursor = conn.cursor()

使用 Python 執行 SQL 指令

例如,您可以使用 Python 來創建一個表格並插入數據。以下是創建一個名為 `users` 的表格並插入數據的範例:

# 創建表格
cursor.execute('''
CREATE TABLE IF NOT EXISTS users (
    id INTEGER PRIMARY KEY,
    name TEXT NOT NULL,
    age INTEGER
)
''')

# 插入數據
cursor.execute('''
INSERT INTO users (name, age) VALUES
('Alice', 30),
('Bob', 25)
''')

# 提交更改
conn.commit()

要查詢數據,可以使用 execute() 方法並結合 fetchall() 方法來獲取查詢結果:

cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()
for row in rows:
    print(row)

fetchall() 方法會返回一個列表,列表中的每一個元素都是一個元組,元組中的每一個元素就是查詢結果中的一行記錄。

錯誤排除

在操作 SQLite 數據庫時,您可能會遇到一些常見錯誤,例如:

1. **資料庫檔案不存在**:請確保您提供的資料庫路徑是正確的。
2. **SQL 語法錯誤**:檢查您的 SQL 語法,確保沒有拼寫或結構錯誤。

結論

在本文中,我們介紹了如何使用 Python 來操作 SQLite 數據庫,包括安裝、連接、執行 SQL 指令及錯誤排除的技巧。使用 Python 操作 SQLite 數據庫可以讓您更加輕鬆地管理資料庫,並有效執行 SQL 指令。

Q&A(常見問題解答)

1. SQLite 與其他資料庫的區別是什麼?

SQLite 是一個輕量級的資料庫,不需要安裝額外的服務,並且所有數據存儲在一個檔案中,適合小型應用和開發測試。

2. 如何在 Python 中處理資料庫錯誤?

您可以使用 try-except 結構來捕獲並處理 SQLite 的例外錯誤,例如:

try:
    # SQL 操作
except sqlite3.Error as e:
    print(f"SQLite error: {e}")

3. 可以在 SQLite 中使用哪些資料類型?

SQLite 支持多種資料類型,包括 INTEGER、REAL、TEXT、BLOB 和 NULL,您可以根據需要選擇合適的資料類型。

發佈留言