目錄
- Python快速上手(二十二)
- Python3 使用數據庫-pymysql
- 1. 創建數據庫連接
- 2. 創建數據表
- 3. 插入數據
- 4. 查詢數據
- 5. 使用 WHERE 條件語句
- 6. 排序
- 7. 刪除記錄
- 8. 更新表數據
- 9. 刪除表
- 10.異常處理
- 總結
Python快速上手(二十二)
Python3 使用數據庫-pymysql
在Python中,我們可以使用pymysql庫來連接MySQL數據庫并進行各種操作。pymysql是一個純Python實現的MySQL客戶端庫,可以讓我們在Python中輕松地與MySQL數據庫進行交互。在本文中,我將詳細講解如何使用pymysql庫進行數據庫操作,包括創建數據庫連接、創建數據表、插入數據、查詢數據、使用WHERE條件語句、排序、刪除記錄、更新表數據以及刪除表。
1. 創建數據庫連接
首先,我們需要通過pymysql庫來創建與MySQL數據庫的連接。以下是連接數據庫的示例代碼:
import pymysql
# 創建數據庫連接
conn = pymysql.connect(host='localhost',user='root',password='password',database='mydatabase'
)# 創建游標對象
cursor = conn.cursor()
在這段代碼中,我們使用pymysql.connect()方法來創建數據庫連接,并傳入主機名、用戶名、密碼和數據庫名稱。然后,我們創建了一個游標對象cursor,用于執行SQL語句。
2. 創建數據表
接下來,讓我們使用CREATE TABLE語句來創建數據表。以下是一個示例代碼:
# 創建數據表
cursor.execute("CREATE TABLE mytable (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)")
在這個示例中,我們使用execute()方法執行CREATE TABLE語句來創建一個名為mytable的數據表,包含id、name和age三個字段。
3. 插入數據
現在,讓我們向數據表中插入一些數據。以下是一個示例代碼:
# 插入數據
sql = "INSERT INTO mytable (name, age) VALUES (%s, %s)"
val = ("Alice", 25)
cursor.execute(sql, val)# 提交更改
conn.commit()
在這個示例中,我們使用INSERT INTO語句向mytable表中插入一條數據,然后使用commit()方法提交更改。
4. 查詢數據
我們可以使用SELECT語句來查詢數據。以下是一個示例代碼:
# 查詢數據
cursor.execute("SELECT * FROM mytable")
result = cursor.fetchall()for row in result:print(row)
這段代碼執行了一個簡單的SELECT * FROM mytable查詢,并打印了查詢結果。
5. 使用 WHERE 條件語句
如果我們想要根據特定條件過濾數據,可以使用WHERE條件語句。以下是一個示例代碼:
# 使用 WHERE 條件語句
sql = "SELECT * FROM mytable WHERE age > 20"
cursor.execute(sql)
result = cursor.fetchall()for row in result:print(row)
這段代碼查詢age大于20的數據,并打印結果。
6. 排序
我們也可以對查詢結果進行排序。以下是一個示例代碼:
# 排序
sql = "SELECT * FROM mytable ORDER BY age DESC"
cursor.execute(sql)
result = cursor.fetchall()for row in result:print(row)
這段代碼按照age字段降序排列查詢結果。
7. 刪除記錄
如果我們想要刪除數據表中的記錄,可以使用DELETE語句。以下是一個示例代碼:
# 刪除記錄
sql = "DELETE FROM mytable WHERE name = 'Alice'"
cursor.execute(sql)# 提交更改
conn.commit()
這段代碼刪除了name為Alice的記錄。
8. 更新表數據
如果我們需要更新數據表中的數據,可以使用UPDATE語句。以下是一個示例代碼:
# 更新表數據
sql = "UPDATE mytable SET age = 30 WHERE name = 'Alice'"
cursor.execute(sql)# 提交更改
conn.commit()
這段代碼將name為Alice的記錄的age字段更新為30。
9. 刪除表
最后,如果我們想要刪除數據表,可以使用DROP TABLE語句。以下是一個示例代碼:
# 刪除表
cursor.execute("DROP TABLE mytable")
這段代碼刪除了名為mytable的數據表。
10.異常處理
在實際應用中,我們應該添加異常處理來處理可能出現的錯誤。下面是一個使用try…except語句來處理異常的示例代碼:
import pymysqltry:conn = pymysql.connect(host='localhost', user='root', password='password', database='mydatabase')cursor = conn.cursor()cursor.execute("SELECT * FROM mytable")results = cursor.fetchall()for row in results:print(row)except pymysql.Error as e:print(f"Error: {e}")finally:cursor.close()conn.close()
在這個示例中,我們使用try…except語句來捕獲可能出現的pymysql.Error異常。如果出現異常,我們打印錯誤信息。無論是否出現異常,最后都會關閉游標和連接。
總結
在本文中,我們詳細講解了如何使用pymysql庫在Python中連接MySQL數據庫,并進行一系列操作,包括創建數據庫連接、創建數據表、插入數據、查詢數據、使用WHERE條件語句、排序、刪除記錄、更新表數據以及刪除表。通過這些操作,我們可以輕松地對MySQL數據庫進行管理和操作。