06 Python 資料庫教學10 所有文章

[資料庫筆記] Python 使用 MySQL資料庫的教學與安裝

Mysql_python_cover_photo

整理 Using MySQL Databases With Python 的資料庫教學筆記,詳細紀錄程式碼範例:從 MySQL 進行安裝教學、Python 連結 MySQL 使用者設定、到基礎資料庫的查詢、讀取 CRUD 應用,讓大家能輕鬆使用 Python 上手 MySQL 進行蒐集和使用資料,附上程式碼提供大家參考。

一. Python 安裝 MySQL

首先是下載 MySQL,Mac 可以從這 Mac下載MySQL,Windows 的朋友在這 Windows下載MySQL,Mac 的朋友選擇第一個 macOS 10.14 DMG 檔 (如下圖)

mysql安裝01
Mac / Windows 下載 MySQL 和安裝

安裝完後會被要求設定 MySQL 的帳號密碼,這組密碼務必記起來!

mysql安裝01
MySQL 設定 root 密碼

接下來安裝 MySQL GUI 工具(圖像化管理資料庫),推議使用 Workbench,Windows 和 Mac 系統都適用;安裝完開啟後會如下圖,再輸入剛剛設定的帳密連線後就完成 MySQL 的安裝囉!

Mysql connect
MySQL Connector 連線

二. Python 連接 MySQL 資料庫

第一次建立的資料庫 host = “localhost”和user = “root” 這兩項會是一樣的,其中的database = “maxdb” 這欄是選擇要使用哪一個 database,如果想選擇 database 再填寫即可,而 password = “password” 這塊要填寫當初安裝 MySQL 資料庫時自己所設定的密碼。

# Connect MySQL
import mysql.connector
maxdb = mysql.connector.connect(
  host = "127.0.0.1",
  user = "root",
  password = "password",
  database = "maxdb",
  )
cursor=maxdb.cursor()

三. Python MySQL 操作 (CRUD)

1. Python 新增 MySQL 資料

首先建立 database 可以參考 #Create db 的段落指令,

建立好後再來是新增裡面的 table 可以參考 #Create table 的段落指令,

是輸入欄位名稱和數據資料可以參考 #Insert Multiple Records 的段落指令,如果 database 和 table 有重複建立的話是無法運行的唷。

# Create db
cursor.execute("CREATE DATABASE maxdb")

# Create table
cursor.execute("CREATE TABLE users (name VARCHAR(255), age INTEGER(99), user_id INTEGER AUTO_INCREMENT PRIMARY Key)")

# Insert Multiple Records
sqlStuff = "INSERT INTO users (name, age) VALUES (%s,%s)"
records = [("Steve", 24),
           ("Max", 25),
           ("Chang" ,26),]
cursor.executemany(sqlStuff, records)
maxdb.commit()

2. Python 讀取 MySQL 資料

利用 Python 讀取 MySQL 的資料,要留意的是其中 Where name Like ‘M%’,M% 這部分是讀取 name 欄位內所有 M 開頭的名稱,如果要指定特定名稱的話,可以寫成 Where name = ‘Max’ 即可。

 # Read
cursor.execute("SELECT * FROM users Where name Like 'M%'")
result = cursor.fetchall()
for row in result:
    print(row)

3. Python 更新 MySQL 資料

利用 Python 更新 MySQL 的資料,其中 WHERE user_id = 3,這部分是使用不重複的欄位(像是 id )更新,如果用欄位 name 來更新資料的話,名稱可能重複所以要留意可能會有多欄位被修改。

# Update
update_users = "UPDATE users SET age = 23 WHERE user_id = 3"
cursor.execute(update_users)
maxdb.commit()

4. Python 刪除 MySQL 資料

利用 Python 清理 MySQL 內 table 的資料,DROP TABLE 的功能使用上要特別留心,是沒辦法復原資料的唷!

# Delete
delete_users = "DELETE FROM users WHERE user_id = 4"
cursor.execute(delete_users)
maxdb.commit()

# Delete Drpo Table
delete_table = "DROP TABLE IF EXISTS users"
cursor.execute(delete_table)

資料庫相關延伸閱讀:

Python相關教學延伸閱讀:

那 [資料庫筆記] Python 做 MySQL 的新增、讀取、更新和刪除 的介紹就到這邊告一個段落囉!有任何問題可以在以下留言~

有關 Max行銷誌的最新文章,都會發佈在 Max 的 Facebook 粉絲專頁,如果想看最新更新,還請您按讚或是追蹤唷!

在〈[資料庫筆記] Python 使用 MySQL資料庫的教學與安裝〉中有 2 則留言

發佈回覆給「Elvis」的留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *