Python是一個流行的高階程式語言,具有豐富的函式庫和框架,能夠用於開發各種類型的應用程式。在伺服器程式設計領域中,Python不僅可以用於開發Web應用程序,而且還可以用於與各種資料庫進行互動。
本文將介紹如何使用Python與MySQL資料庫互動。我們將使用PyMySQL作為Python與MySQL互動的函式庫。
1.安裝PyMySQL函式庫
在使用PyMySQL函式庫之前,需要先安裝它。開啟終端機或命令提示符,並輸入以下命令進行安裝:
pip install PyMySQL
2.連接到MySQL資料庫
要連接到MySQL資料庫,我們需要知道MySQL伺服器的主機名稱、連接埠號、使用者名稱和密碼。
我們可以使用以下Python程式碼連接到MySQL資料庫:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 关闭数据库连接 db.close()
在此程式碼中,我們使用了pymysql
函式庫的connect()
函數來連接到MySQL資料庫。此函數的參數包括主機名稱、連接埠號碼、使用者名稱和密碼等資訊。
此外,我們還指定了要連接的資料庫的名稱,該名稱是透過database
參數傳遞的。在下面的程式碼中,我們將繼續使用此連接。
3.建立表格
在與MySQL資料庫互動之前,我們需要建立一個表格。我們可以使用以下Python程式碼在MySQL資料庫中建立一個名為users
的表:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 创建表 cursor = db.cursor() cursor.execute('DROP TABLE IF EXISTS users') sql = '''CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, email VARCHAR(30) NOT NULL, password VARCHAR(30) NOT NULL, PRIMARY KEY (id))''' cursor.execute(sql) # 关闭数据库连接 db.close()
在此程式碼中,我們定義了一個名為users
的表,並定義了四個欄位:id
、name
、email
和password
。其中,id
是主鍵,使用INT
資料類型,name
和email
是使用VARCHAR
資料類型保存的字串,password
也是使用VARCHAR
資料類型儲存的字串。表的建立過程使用了MySQL的SQL語句。請注意,我們還在users
表中設定了自動增量列,該列將自動遞增。
4.插入資料
現在,我們已經建立了users
表,可以開始向該表中插入資料了。我們可以使用以下Python程式碼將一些資料插入到該表中:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 插入数据 cursor = db.cursor() sql = "INSERT INTO users(name, email, password) VALUES (%s, %s, %s)" values = [('Alice', 'alice@email.com', '123456'), ('Bob', 'bob@email.com', '789012'), ('Charlie', 'charlie@email.com', '345678')] cursor.executemany(sql, values) db.commit() # 关闭数据库连接 db.close()
在此程式碼中,我們首先使用executemany()
函數將多個資料插入到users
表中。此函數的第一個參數指定要執行的SQL語句,第二個參數是一個包含要插入的資料的元組或清單。注意,我們使用了佔位符%s
來表示要插入的實際值。
在呼叫executemany()
函數後,我們必須呼叫commit()
方法來讓資料儲存到資料庫中。
5.查詢數據
要從users
表中檢索數據,我們可以使用以下Python程式碼:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 查询数据 cursor = db.cursor() sql = "SELECT * FROM users" cursor.execute(sql) results = cursor.fetchall() for row in results: id = row[0] name = row[1] email = row[2] password = row[3] print("{} - {} - {} - {}".format(id, name, email, password)) # 关闭数据库连接 db.close()
在此程式碼中,我們使用SELECT
語句從users
表格中檢索所有行。然後,使用fetchall()
方法取得所有檢索到的行,並使用迴圈將每一行作為元組處理。最後,我們根據每一行的列值列印輸出結果。
6.更新數據
要更新users
表中的數據,我們可以使用以下Python程式碼:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 更新数据 cursor = db.cursor() sql = "UPDATE users SET password = %s WHERE name = %s" values = ('abcdef', 'Alice') cursor.execute(sql, values) db.commit() # 关闭数据库连接 db.close()
在此程式碼中,我們使用UPDATE
語句將名為Alice
的使用者的密碼更新為abcdef
。程式碼使用了帶有參數的SQL語句,其中%s
是佔位符。我們也將要更新的實際值包裝在元組中,然後傳遞給execute()
函數。
7.刪除數據
要從users
表中刪除數據,我們可以使用以下Python程式碼:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 删除数据 cursor = db.cursor() sql = "DELETE FROM users WHERE email = %s" value = ('bob@email.com',) cursor.execute(sql, value) db.commit() # 关闭数据库连接 db.close()
在此程式碼中,我們使用DELETE
語句刪除電子郵件為bob@email.com
的使用者。
總結
在本文中,我們介紹如何使用Python與MySQL資料庫進行交互,並使用了pymysql
函式庫作為Python與MySQL之間的橋樑。我們學習如何連接到MySQL資料庫,建立表,插入數據,更新數據和刪除數據,這些是在開發Web應用程式時經常涉及的常見任務。透過掌握這些技能,您可以開始使用Python建立強大的伺服器應用程序,以及與各種資料庫互動。
以上是Python伺服器程式設計:使用PyMySQL與MySQL資料庫交互的詳細內容。更多資訊請關注PHP中文網其他相關文章!