本文將從以下幾個方面詳細闡述如何使用Python操作DB文件:
- 創建和打開DB文件
- 執行SQL語句
- 讀取和寫入數據
- 關閉DB文件
一、創建和打開DB文件
Python內置了SQLite3庫,用於操作SQLite資料庫。在操作SQLite資料庫之前,需要打開和創建一個資料庫文件。
import sqlite3 # 創建資料庫文件 conn = sqlite3.connect('example.db') # 連接資料庫 conn = sqlite3.connect('example.db') # 創建一個游標對象 cur = conn.cursor()
以上代碼中,首先使用了connect()
方法創建了一個名為example.db
的資料庫文件,並建立連接。同時也可以使用相對路徑或絕對路徑創建資料庫文件。
接著使用cursor()
方法創建了一個游標對象cur
,用於執行SQL語句。
二、執行SQL語句
SQLite資料庫支持SQL語言,用於創建,讀取,更新和刪除數據。
以下是對資料庫中的表進行創建和插入數據的代碼:
# 創建表 cur.execute('''CREATE TABLE example (id INT PRIMARY KEY NOT NULL, name TEXT NOT NULL, age INT NOT NULL, sex CHAR(50))''') # 插入數據 cur.execute("INSERT INTO example (id,name,age,sex) VALUES (1, 'John', 25, 'Male')") conn.commit()
以上代碼中,create table
語句用於創建名為example
的表格。表格中包含4列,分別為id,name,age和sex。其中,id列為主鍵,name,age和sex列必須填寫。接著使用insert into
語句向表格中插入一條數據,conn.commit()
語句用於提交修改,讓修改生效。
三、讀取和寫入數據
Python使用fetchall()
和fetchone()
方法從資料庫中讀取數據。
以下是從資料庫中讀取數據的代碼:
# 查詢數據 cur.execute("SELECT * FROM example") data = cur.fetchall() for row in data: print(row)
以上代碼中,select
語句用於查詢表格中的所有數據。fetchall()
用於獲取所有數據,並將數據保存在變數中。遍歷,輸出所有數據。
以下是向資料庫中寫入數據的代碼,以及更新和刪除數據的代碼:
# 插入數據 cur.execute("INSERT INTO example (id,name,age,sex) VALUES (2, 'Michael', 30, 'Male')") conn.commit() # 更新數據 cur.execute("UPDATE example SET age = 26 WHERE id = 1") conn.commit() # 刪除數據 cur.execute("DELETE FROM example WHERE id = 2") conn.commit()
以上代碼中,insert into
語句用於向表格中插入一條數據。update
和delete
語句用於更新和刪除數據。在執行SQL語句之後,使用conn.commit()
方法提交修改,讓修改生效。
四、關閉DB文件
需要使用close()
方法關閉資料庫連接:
# 關閉游標和資料庫連接 cur.close() conn.close()
以上是對Python操作DB文件的基本介紹。需要注意的是,在執行過程中需要注意錯誤處理,同時也需要避免SQL注入攻擊等安全問題。
原創文章,作者:PFFHV,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/373555.html