一、Python3中使用PyMySql
1、 直接命令:pip install pymysql
2、 測試 pip show pymysql
二、創建MySQL表
執行下面的SQL語句,創建一張users 表。
CREATE TABLE `users` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`email` VARCHAR(255) COLLATE utf8_bin NOT NULL,
`password` VARCHAR(255) COLLATE utf8_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8COLLATE=utf8_bin
AUTO_INCREMENT=1 ;
三、Python操作MySQL
接下來纔是重點,Python操作MySQL數據庫。
3.1插入數據:
import pymysql.cursors
# 連接MySQL數據庫
connection =pymysql.connect(host='127.0.0.1', port=3306, user='root',password='198876', db='guest',
charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor)
# 通過cursor創建遊標
cursor = connection.cursor()
# 創建sql 語句,並執行
sql = "INSERT INTO `users` (`email`,`password`) VALUES ('[email protected]', '123456')"
cursor.execute(sql)
# 提交SQL
connection.commit()
不管你使用的是什麼工具或庫,連接數據庫這一步必不可少。host爲數據庫的主機IP地址,port爲MySQL的默認端口號,user爲數據的用戶名,password爲數據庫的登錄密碼,db爲數據庫的名稱。
cursor()方法創建數據庫遊標。
execute()方法執行SQL語句。
commit()將數據庫的操作真正的提交到數據。
3.2. 查詢數據
import pymysql.cursors
# 連接MySQL數據庫
connection =pymysql.connect(host='127.0.0.1', port=3306, user='root',password='198876', db='guest', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor)
# 通過cursor創建遊標
cursor =connection.cursor()
# 執行數據查詢
sql = "SELECT `id`, `password` FROM `users`WHERE `email`='[email protected]'"
cursor.execute(sql)
#查詢數據庫單條數據
result =cursor.fetchone()
print(result)
print("-----------華麗分割線------------")
# 執行數據查詢
sql = "SELECT `id`, `password` FROM`users`"
cursor.execute(sql)
#查詢數據庫多條數據
result =cursor.fetchall()
for data inresult:
#查詢結果是一個字典,通過關鍵字來獲取值
id = data[“id”]
password = data[“password”]
print(id,password)
# 關閉數據連接
connection.close()
接下來的操作就是數據庫的查詢了。
fetchone() 用於查詢單條數據。
fetchall() 用於查詢多條數據。
close() 最後不要忘記了關閉數據連接。
運行結果:
{'password': '123456', 'id': 1}
-----------華麗分割線------------
{'password': '123456', 'id': 1}
{'password': '654321', 'id': 2}