Ngôn ngữ SQL – Câu lệnh INSERT

Câu lệnh INSERT trong SQL

Câu lệnh INSERT INTO trong SQL được sử dụng để thêm các hàng dữ liệu mới vào một bảng trong cơ sở dữ liệu.

Có hai cách thêm dữ liệu vào một bảng:

  1. Sử dụng câu lệnh SQL INSERT INTO

    1. Xác định cột cần thêm

    2. Không xác định cột

  2. Sử dụng câu lệnh SELECT INSERT INTO

1) Thêm dữ liệu trực tiếp vào bảng

Bạn có thể thêm một hàng trong bảng bằng cách sử dụng lệnh SQL INSERT INTO. Có 2 cách để thêm.

Bạn có xác định hoặc bỏ qua các tên cột trong khi sử dụng câu lệnh INSERT INTO.

Để thêm giá trị cột một phần, bạn phải xác định tên cột. Nhưng nếu bạn muốn thêm tất cả các giá trị cột, bạn có thể chỉ định hoặc bỏ qua các tên cột.

Nếu bạn chỉ định tên cột, cú pháp của câu lệnh chèn vào sẽ như sau:

INSERT INTO TABLE_NAME (column1, column2, column3,...columnN)  
VALUES (value1, value2, value3,...valueN);

 Ở đây, column1, column2, column3, … columnN là tên của các cột trong bảng mà bạn muốn chèn dữ liệu.

Chú ý: Bạn có thể không cần phải chỉ rõ tên cột trong truy vấn SQL nếu bạn đang thêm các giá trị cho tất cả các cột của bảng. Nhưng hãy chắc chắn thứ tự của các giá trị theo thứ tự như các cột trong bảng.

INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);

Ví dụ

Các câu lệnh sau sẽ tạo ra sáu bản ghi trong bảng KHÁCH HÀNG.

INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY)
    VALUES (1, 'Ha Anh', 32, 'Da Nang', 2000.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY)
    VALUES (2, 'Van Ha', 25, 'Ha Noi', 1500.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY)
    VALUES (3, 'Vu Bang', 23, 'Vinh', 2000.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY)
    VALUES (4, 'Thu Minh', 25, 'Ha Noi', 6500.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY)
    VALUES (5, 'Hai An', 27, 'Ha Noi', 8500.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY)
    VALUES (6, 'Hoang', 22, 'Ha Noi', 4500.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY)
    VALUES (7, 'Binh', 24, 'Ha Noi', 10000.00 );

Bạn có thể tạo một bản ghi trong bảng CUSTOMERS bằng cách sử dụng cú pháp thứ hai như hình dưới đây.

INSERT INTO CUSTOMERS 
VALUES (7, 'Muffy', 24, 'Indore', 10000.00 );

Tất cả các câu lệnh trên sẽ tạo ra các bản ghi sau trong bảng CUSTOMERS như hình dưới đây.

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ha Anh   |  32 | Da Nang   |  2000.00 |
|  2 | Van Ha   |  25 | Ha Noi    |  1500.00 |
|  3 | Vu Bang  |  23 | Vinh      |  2000.00 |
|  4 | Thu Minh |  25 | Ha Noi    |  6500.00 |
|  5 | Hai An   |  27 | Ha Noi    |  8500.00 |
|  6 | Hoang    |  22 | Ha Noi    |  4500.00 |
|  7 | Binh     |  24 | Ha Noi    | 10000.00 |
+----+----------+-----+-----------+----------+

Insert vào một bảng sử dụng thông tin từ bảng khác

Bạn có thể insert dữ liệu vào một bảng thông qua câu lệnh select trên một bảng khác.

Đây là cú pháp:

INSERT INTO first_table_name [(column1, column2, ... columnN)] 
   SELECT column1, column2, ...columnN 
   FROM second_table_name
   [WHERE condition];