一、環境搭建
在Python中連接MySQL資料庫,需要引入pymysql模塊,使用pip進行安裝。
pip install pymysql
在引入pymysql模塊後,通過連接MySQL資料庫來進行操作,需要先在MySQL Server中創建一個資料庫,並且創建一個用戶,然後給該用戶賦予該資料庫的許可權。
創建資料庫可以通過以下sql語句實現:
CREATE DATABASE database_name;
創建用戶並賦予許可權可以使用以下sql語句:
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
FLUSH PRIVILEGES;
其中,’username’和’password’為自定義的用戶名和密碼,’database_name’為創建的資料庫名稱。
二、連接MySQL資料庫
連接MySQL資料庫,需要使用pymysql中的connect()方法。
import pymysql
# 打開資料庫連接
db = pymysql.connect("localhost", "username", "password", "database_name")
# 使用 cursor() 方法創建一個游標對象 cursor
cursor = db.cursor()
# 使用 execute() 方法執行 SQL 查詢
cursor.execute("SELECT VERSION()")
# 使用 fetchone() 方法獲取單條數據.
data = cursor.fetchone()
print("Database version : %s " % data)
# 關閉資料庫連接
db.close()
以上代碼連接到localhost主機上的MySQL Server,並使用創建的用戶名和密碼進行連接,其中’database_name’為創建的資料庫名稱。通過cursor對象執行了一條SQL查詢,並使用fetchone()方法獲取查詢結果。
三、執行SQL語句
在MySQL資料庫中,常用的SQL語句有SELECT、INSERT、UPDATE、DELETE等。Python中執行SQL語句需要使用游標對象cursor的execute()方法。
1. SELECT查詢語句
SELECT語句用於查詢資料庫中的數據。
import pymysql
# 打開資料庫連接
db = pymysql.connect("localhost", "username", "password", "database_name")
# 使用 cursor() 方法創建一個游標對象 cursor
cursor = db.cursor()
# 使用 execute() 方法執行 SQL 查詢
cursor.execute("SELECT * FROM table_name")
# 使用 fetchall() 方法獲取所有結果
results = cursor.fetchall()
# 遍歷結果
for row in results:
col1 = row[0]
col2 = row[1]
col3 = row[2]
# 輸出結果
print("col1=%s,col2=%s,col3=%s" % (col1, col2, col3))
# 關閉資料庫連接
db.close()
以上代碼查詢了’table_name’表中的所有數據,並將結果遍歷輸出。
2. INSERT插入語句
INSERT語句用於向資料庫中插入數據。
import pymysql
# 打開資料庫連接
db = pymysql.connect("localhost", "username", "password", "database_name")
# 使用 cursor() 方法創建一個游標對象 cursor
cursor = db.cursor()
# SQL 插入語句
sql = "INSERT INTO table_name(col1, col2, col3) VALUES('%s', '%s', '%s')" % \
('value1', 'value2', 'value3')
try:
# 執行SQL語句
cursor.execute(sql)
# 提交到資料庫執行
db.commit()
except:
# 如果發生錯誤則回滾
db.rollback()
# 關閉資料庫連接
db.close()
以上代碼向’table_name’表中插入了一條數據。
3. UPDATE更新語句
UPDATE語句用於更新資料庫中的數據。
import pymysql
# 打開資料庫連接
db = pymysql.connect("localhost", "username", "password", "database_name")
# 使用 cursor() 方法創建一個游標對象 cursor
cursor = db.cursor()
# SQL 更新語句
sql = "UPDATE table_name SET col1='%s' WHERE col2='%s'" % \
('new_value', 'old_value')
try:
# 執行SQL語句
cursor.execute(sql)
# 提交到資料庫執行
db.commit()
except:
# 如果發生錯誤則回滾
db.rollback()
# 關閉資料庫連接
db.close()
以上代碼將’table_name’表中col2=’old_value’的記錄的col1欄位的值更新為’new_value’。
4. DELETE刪除語句
DELETE語句用於從資料庫中刪除數據。
import pymysql
# 打開資料庫連接
db = pymysql.connect("localhost", "username", "password", "database_name")
# 使用 cursor() 方法創建一個游標對象 cursor
cursor = db.cursor()
# SQL 刪除語句
sql = "DELETE FROM table_name WHERE col2='%s'" % ('value')
try:
# 執行SQL語句
cursor.execute(sql)
# 提交到資料庫執行
db.commit()
except:
# 如果發生錯誤則回滾
db.rollback()
# 關閉資料庫連接
db.close()
以上代碼從’table_name’表中刪除col2=’value’的記錄。
四、總結
以上就是Python實現MySQL資料庫連接和操作的指南。連接MySQL資料庫並操作數據需要引入pymysql模塊,通過connect()方法創建資料庫連接,通過cursor()方法創建游標對象,使用execute()方法執行SQL語句,使用fetchone()或fetchall()方法獲取查詢結果。在執行INSERT、UPDATE、DELETE等操作時,需要使用commit()方法提交操作結果。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/156613.html