新增資料
以下建立一個簡單的 `students` 學生資料表,並示範如何使用 SQL 新增資料。
## 1. 建立資料表
```sql
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT,
email VARCHAR(100)
);
```
欄位說明:
| 欄位 | 資料型別 | 說明 |
|---|---|---|
| `id` | `INT` | 學生編號,作為主鍵 |
| `name` | `VARCHAR(50)` | 學生姓名,不可為空 |
| `age` | `INT` | 年齡 |
| `email` | `VARCHAR(100)` | 電子郵件 |
---
## 2. 新增單筆資料
```sql
INSERT INTO students (id, name, age, email)
VALUES (1, '王小明', 20, 'ming@example.com');
```
執行後,資料表會新增一筆資料:
| id | name | age | email |
|---:|---|---:|---|
| 1 | 王小明 | 20 | ming@example.com |
---
## 3. 一次新增多筆資料
```sql
INSERT INTO students (id, name, age, email)
VALUES
(2, '李小華', 21, 'hua@example.com'),
(3, '陳小美', 19, 'mei@example.com'),
(4, '林大同', 22, 'tong@example.com');
```
這樣會一次新增三筆資料。
---
## 4. 只新增部分欄位
如果某些欄位可以不填寫,可以只指定需要新增的欄位:
```sql
INSERT INTO students (id, name)
VALUES (5, '張小安');
```
結果如下:
| id | name | age | email |
|---:|---|---:|---|
| 5 | 張小安 | `NULL` | `NULL` |
`NULL` 表示目前沒有資料。
---
## 5. 查詢新增後的資料
```sql
SELECT *
FROM students;
```
也可以只查詢特定欄位:
```sql
SELECT name, email
FROM students;
```
---
## SQL 新增資料的基本語法
```sql
INSERT INTO 資料表名稱 (欄位1, 欄位2, 欄位3)
VALUES (值1, 值2, 值3);
```
注意事項:
- 文字資料通常使用單引號,例如 `'王小明'`
- 數字不需要加引號,例如 `20`
- `INSERT` 後面的欄位順序,必須和 `VALUES` 裡的值相互對應
- `id` 是主鍵,不能重複
- 若欄位設定為 `NOT NULL`,新增時就必須提供資料
相關學習地圖、教學課程
Python 資料工程
Python 後端工程、資料庫