Bản tóm tắt. trong hướng dẫn này, bạn sẽ học cách sử dụng câu lệnh MySQL
5 để chèn một hoặc nhiều hàng vào một bảngCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Giới thiệu về câu lệnh MySQL INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
5
INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Câu lệnh
5 cho phép bạn chèn một hoặc nhiều hàng vào một bảng. Sau đây minh họa cú pháp của câu lệnhCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
5Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
INSERT INTO table[c1,c2,...] VALUES [v1,v2,...];
Trong cú pháp này,
- Đầu tiên, chỉ định tên bảng và danh sách các cột được phân tách bằng dấu phẩy bên trong dấu ngoặc đơn sau mệnh đề
9
Code language: SQL [Structured Query Language] [sql]INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
- Sau đó, đặt danh sách các giá trị của các cột tương ứng được phân tách bằng dấu phẩy bên trong dấu ngoặc đơn sau từ khóa
0
Code language: SQL [Structured Query Language] [sql]CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
Số lượng cột và giá trị phải giống nhau. Ngoài ra, vị trí của các cột phải tương ứng với vị trí của các giá trị của chúng
Để chèn nhiều hàng vào một bảng bằng một câu lệnh
5, bạn sử dụng cú pháp sauCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Trong cú pháp này, các hàng được phân tách bằng dấu phẩy trong mệnh đề
0Code language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
MySQL INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
5 ví dụ
INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Hãy tạo một bảng mới tên là
4 để thực hành câu lệnhCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
5Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
1] MySQL INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
5 – ví dụ về INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
5 đơn giản
INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Câu lệnh sau chèn một hàng mới vào bảng
4Code language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
7Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
MySQL trả về thông báo sau
8Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Điều đó có nghĩa là một hàng đã được chèn vào bảng
4 thành côngCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
Truy vấn này trả về dữ liệu từ bảng
4Code language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
1Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Đây là đầu ra
Trong ví dụ này, chúng tôi đã chỉ định giá trị cho chỉ các cột
71 vàCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
72. Đối với các cột khác, MySQL sử dụng các giá trị mặc địnhCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Cột
73 là cộtCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
74. Điều đó có nghĩa là MySQL tạo ra một số nguyên tuần tự bất cứ khi nào một hàng được chèn vào bảngCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Các cột
75,Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
76 vàCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
77 sử dụngCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
78 làm giá trị mặc định, do đó, MySQL sử dụngCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
79 để chèn vào các cột này nếu bạn không chỉ định giá trị của chúng trong câu lệnhCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
5Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
2] MySQL INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
5 – Ví dụ về chèn hàng bằng giá trị mặc định
INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Nếu bạn muốn chèn một giá trị mặc định vào một cột, bạn có hai cách
- Bỏ qua cả tên cột và giá trị trong câu lệnh
5INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
- Chỉ định tên cột trong mệnh đề
9 và sử dụng từ khóa
Code language: SQL [Structured Query Language] [sql]INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
84 trong mệnh đề
Code language: SQL [Structured Query Language] [sql]INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
0
Code language: SQL [Structured Query Language] [sql]CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
Ví dụ sau minh họa cách thứ hai
7Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Trong ví dụ này, chúng tôi đã chỉ định cột
72 và từ khóaCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
84Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Vì giá trị mặc định cho cột
72 là 3 như được khai báo trong định nghĩa bảngCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
1
INSERT INTO table[c1,c2,...] VALUES [v1,v2,...];
MySQL sử dụng số 3 để chèn vào cột
72Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Câu lệnh sau trả về nội dung của bảng
4 sau khi chènCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
1Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
3] MySQL INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
5 – Chèn ngày tháng vào bảng ví dụ
INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Để chèn một giá trị ngày bằng chữ vào một cột, bạn sử dụng định dạng sau
6
INSERT INTO table[c1,c2,...] VALUES [v1,v2,...];
ở định dạng này
12 đại diện cho năm có bốn chữ số e. g. , 2018
Code language: SQL [Structured Query Language] [sql]INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
13 đại diện cho một tháng có hai chữ số e. g. , 01, 02 và 12
Code language: SQL [Structured Query Language] [sql]INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
14 đại diện cho một ngày có hai chữ số e. g. , 01, 02, 30
Code language: SQL [Structured Query Language] [sql]INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Câu lệnh sau đây chèn một hàng mới vào bảng
4 với các giá trị ngày bắt đầu và ngày hết hạnCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
0Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Hình ảnh sau đây cho thấy nội dung của bảng
4 sau khi chènCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
Có thể sử dụng các biểu thức trong mệnh đề
0. Ví dụ: câu lệnh sau đây thêm một nhiệm vụ mới bằng cách sử dụng ngày hiện tại cho các cột ngày bắt đầu và ngày đến hạnCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
1Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Trong ví dụ này, chúng tôi đã sử dụng hàm
18 làm giá trị cho cộtCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
75 vàCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
76. Lưu ý rằng hàmCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
71 là hàm ngày trả về ngày hệ thống hiện tạiCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Đây là nội dung của bảng
4 sau khi chènCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
4] MySQL INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Code language: SQL [Structured Query Language] [sql]
5 – Ví dụ về chèn nhiều hàng
INSERT INTO table[c1,c2,...]
VALUES
[v11,v12,...],
[v21,v22,...],
...
[vnn,vn2,...];
Câu lệnh sau chèn ba hàng vào bảng
4Code language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
2Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Trong ví dụ này, mỗi dữ liệu hàng được chỉ định dưới dạng danh sách các giá trị trong mệnh đề
0Code language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
MySQL trả về thông báo sau
3Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Điều đó có nghĩa là ba hàng đã được chèn thành công mà không có hàng trùng lặp hoặc cảnh báo nào
1Code language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];
Bảng
4 có dữ liệu sauCode language: SQL [Structured Query Language] [sql]
CREATE TABLE IF NOT EXISTS tasks [ task_id INT AUTO_INCREMENT, title VARCHAR[255] NOT NULL, start_date DATE, due_date DATE, priority TINYINT NOT NULL DEFAULT 3, description TEXT, PRIMARY KEY [task_id] ];
Trong hướng dẫn này, bạn đã học cách sử dụng câu lệnh MySQL
5 để thêm một hoặc nhiều hàng vào một bảngCode language: SQL [Structured Query Language] [sql]
INSERT INTO table[c1,c2,...] VALUES [v11,v12,...], [v21,v22,...], ... [vnn,vn2,...];