一、Python資料庫操作簡介
Python擁有許多用於資料庫操作的庫,如pymysql、sqlite3等,這些庫可以幫助我們連接資料庫、讀取、插入和更新數據。在使用Python進行資料庫操作時,需要先安裝相應的資料庫驅動程序,如MySQL-python、pymysql等。下面以pymysql為例,介紹如何使用Python進行資料庫操作。
二、連接資料庫
import pymysql
# 連接資料庫
db = pymysql.connect(host='localhost', port=3306, user='root', password='password', database='test')
上述代碼中,host為資料庫所在主機地址,port為連接埠,user和password為登錄資料庫的用戶名和密碼,database為要使用的資料庫名稱。
三、創建表
# 創建數據表
cursor = db.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS example (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)")
# 關閉資料庫連接
db.close()
上述代碼中,使用cursor.execute()方法執行SQL語句創建數據表example,其中id是主鍵,name和age是表中的兩個欄位。通過db.close()方法關閉資料庫連接。
四、插入數據
# 連接資料庫
db = pymysql.connect(host='localhost', port=3306, user='root', password='password', database='test')
# 使用cursor()方法獲取操作游標
cursor = db.cursor()
# SQL插入語句
sql = "INSERT INTO example(name, age) VALUES ('Tom', 20)"
try:
# 執行SQL語句
cursor.execute(sql)
# 提交修改
db.commit()
except:
# 發生錯誤時回滾
db.rollback()
# 關閉資料庫連接
db.close()
上述代碼通過SQL語句插入一條name為Tom,age為20的數據到example表中。其中try-except處理了插入數據時可能發生的錯誤情況。
五、插入多條數據
# 連接資料庫
db = pymysql.connect(host='localhost', port=3306, user='root', password='password', database='test')
# 使用cursor()方法獲取操作游標
cursor = db.cursor()
# SQL插入語句
sql = "INSERT INTO example(name, age) VALUES (%s, %s)"
values = [('Bob', 22), ('Mary', 21), ('Dave', 25)]
try:
# 執行SQL語句
cursor.executemany(sql, values)
# 提交修改
db.commit()
except:
# 發生錯誤時回滾
db.rollback()
# 關閉資料庫連接
db.close()
上述代碼通過executemany()方法一次性插入多條數據,避免了多次執行execute()方法的麻煩。其中values定義了多個要插入的數據。
六、完整代碼示例
import pymysql
# 連接資料庫
db = pymysql.connect(host='localhost', port=3306, user='root', password='password', database='test')
# 使用cursor()方法獲取操作游標
cursor = db.cursor()
# 創建數據表
cursor.execute("CREATE TABLE IF NOT EXISTS example (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)")
# 插入數據
sql = "INSERT INTO example(name, age) VALUES ('Tom', 20)"
try:
# 執行SQL語句
cursor.execute(sql)
# 提交修改
db.commit()
except:
# 發生錯誤時回滾
db.rollback()
# 插入多條數據
sql = "INSERT INTO example(name, age) VALUES (%s, %s)"
values = [('Bob', 22), ('Mary', 21), ('Dave', 25)]
try:
# 執行SQL語句
cursor.executemany(sql, values)
# 提交修改
db.commit()
except:
# 發生錯誤時回滾
db.rollback()
# 關閉資料庫連接
db.close()
上述代碼包括了連接資料庫、創建數據表、插入單條數據和插入多條數據等操作。使用Python進行資料庫操作,可以方便地實現數據的增刪改查,為數據管理和分析提供了便利。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/227478.html