WeHelp
MySQL 是一套穩定、高效能的資料庫管理系統,是全球網頁開發與應用程式最常搭配的核心工具之一。
  1. MySQL 下載安裝
  2. 啟動、連線測試
  3. Database 管理
  4. SQL 資料表管理
  5. SQL 資料管理
  6. SQL 資料取得、篩選
  7. 欄位的資料型態
  8. 資料交易簡介、操作
  9. 使用者管理
  10. Python 程式連線
  11. Node.js 程式連線
  12. PHP 程式連線
SQL 資料管理
在 MySQL 中,管理資料表內的資料主要使用 `INSERT`、`UPDATE` 與 `DELETE` 三種 SQL 指令。以下以 `users` 資料表為例: ```sql CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL, email VARCHAR(100), age INT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); ``` ## 1. 新增資料:`INSERT` ### 新增單筆資料 ```sql INSERT INTO users (name, email, age) VALUES ('王小明', 'ming@example.com', 25); ``` `id` 和 `created_at` 會使用資料表定義的預設值。 ### 一次新增多筆資料 ```sql INSERT INTO users (name, email, age) VALUES ('陳小華', 'hua@example.com', 30), ('林小美', 'mei@example.com', 28), ('張大偉', 'wei@example.com', 35); ``` ### 使用 `INSERT ... SET` ```sql INSERT INTO users SET name = '李小安', email = 'an@example.com', age = 22; ``` 一般較常使用第一種 `INSERT INTO ... VALUES` 寫法。 --- ## 2. 修改資料:`UPDATE` ### 修改指定資料 ```sql UPDATE users SET age = 26 WHERE id = 1; ``` 將 `id` 為 `1` 的使用者年齡修改為 `26`。 ### 同時修改多個欄位 ```sql UPDATE users SET name = '王大明', email = 'daming@example.com' WHERE id = 1; ``` ### 依條件批次修改 ```sql UPDATE users SET age = age + 1 WHERE age >= 30; ``` 將所有年齡大於或等於 30 歲的使用者年齡增加一歲。 > **注意:** `UPDATE` 若省略 `WHERE`,會修改整張資料表的所有資料。 ```sql -- 危險:會把所有使用者的年齡改成 18 UPDATE users SET age = 18; ``` --- ## 3. 刪除資料:`DELETE` ### 刪除指定資料 ```sql DELETE FROM users WHERE id = 1; ``` 刪除 `id` 為 `1` 的資料。 ### 依條件刪除多筆資料 ```sql DELETE FROM users WHERE age < 18; ``` 刪除所有未滿 18 歲的使用者。 > **注意:** `DELETE` 若省略 `WHERE`,會刪除整張資料表中的所有資料。 ```sql -- 危險:刪除 users 表中的所有資料 DELETE FROM users; ``` --- ## 4. 查詢資料確認結果:`SELECT` 新增、修改或刪除後,可以使用 `SELECT` 確認: ```sql SELECT * FROM users; ``` 查詢特定資料: ```sql SELECT id, name, email FROM users WHERE id = 1; ``` --- ## 5. 使用交易避免誤操作 進行重要的修改或刪除時,可以使用交易: ```sql START TRANSACTION; UPDATE users SET age = 27 WHERE id = 1; -- 確認結果後提交 COMMIT; ``` 如果發現操作錯誤,可以復原: ```sql START TRANSACTION; DELETE FROM users WHERE id = 1; -- 復原刪除操作 ROLLBACK; ``` 注意:`ROLLBACK` 是否有效,通常取決於資料表使用的儲存引擎,例如 `InnoDB` 支援交易。 --- ## 常用指令整理 | 操作 | SQL 指令 | |---|---| | 新增資料 | `INSERT INTO` | | 修改資料 | `UPDATE ... SET` | | 刪除資料 | `DELETE FROM` | | 查詢資料 | `SELECT` | | 提交交易 | `COMMIT` | | 復原交易 | `ROLLBACK` | 執行 `UPDATE` 或 `DELETE` 時,應先使用相同條件的 `SELECT` 確認即將被影響的資料,例如: ```sql SELECT * FROM users WHERE age < 18; ``` 確認無誤後,再執行: ```sql DELETE FROM users WHERE age < 18; ```
相關學習地圖、教學課程
Python 後端工程、資料庫
從 0 開始,成為後端工程師的學習路徑。