INSERT INTO - cú pháp thêm dữ liệu

2022-11-02 13:52:13

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

Trong SQL, về cơ bản có hai cách để CHÈN dữ liệu vào bảng: Một là chèn từng hàng một, hai là chèn nhiều hàng cùng một lúc. Trong phần này, chúng ta sẽ xem xét trường hợp đầu tiên.

Syntax

Cú pháp để chèn dữ liệu vào bảng một hàng tại một thời điểm như sau:

INSERT INTO "table_name" ("column1", "column2", ...)
VALUES ("value1", "value2", ...);

Các ví dụ

Các ví dụ đề cập đến một bảng có cấu trúc sau,

Table Store_Information

 Column Name  Data Type 
 Store_Name  char(50) 
 Manager_ID  integer 
 Sales  float 
 Txn_Date  datetime 

Ví dụ 1: Tất cả các tên cột đều được chỉ định

Chúng tôi muốn chèn một hàng bổ sung vào bảng đại diện cho dữ liệu bán hàng cho Los Angeles vào ngày 10 tháng 1 năm 1999. Vào ngày đó, cửa hàng này có doanh thu 900 đô la và Manager_ID cho cửa hàng này là 10. Chúng tôi sẽ sử dụng tập lệnh SQL sau:

INSERT INTO Store_Information (Store_Name, Manager_ID, Sales, Txn_Date)
VALUES ('Los Angeles', 10, 900, 'Jan-10-1999');

Bây giờ bảng sẽ chứa dữ liệu sau:

Table Store_Information

 Store_Name  Manager_ID  Sales  Txn_Date 
 Los Angeles  10  900  Jan-10-1999 

Xin lưu ý rằng chúng tôi có thể chỉ định tên cột theo bất kỳ thứ tự nào - thứ tự không nhất thiết phải giống thứ tự của bảng. Ví dụ: câu lệnh SQL sau đây tương đương với câu lệnh SQL ở trên:

INSERT INTO Store_Information (Sales, Store_Name, Manager_ID, Txn_Date)
VALUES (900, 'Los Angeles', 10, 'Jan-10-1999');

Ví dụ 2: Không có tên cột nào được chỉ định

Nếu chúng ta bỏ tên cột trong câu lệnh INSERT INTO , chúng ta sẽ cần đảm bảo rằng dữ liệu được chèn theo cùng một thứ tự cột như trong bảng. Ví dụ,

INSERT INTO Store_Information
VALUES ('Los Angeles', 10, 900, 'Jan-10-1999');

sẽ cung cấp cho chúng tôi kết quả mong muốn, trong khi

INSERT INTO Store_Information
VALUES (900, 'Los Angeles', 10, 'Jan-10-1999');

sẽ dẫn đến Store_Name được đặt thành 900, Manager_ID được đặt thành 'Los Angeles' và Bán hàng được đặt thành 10. Rõ ràng đây không phải là điều chúng tôi dự định thực hiện.

Ví dụ 3: Một số tên cột được chỉ định

Trong hai ví dụ đầu tiên, chúng tôi chèn một giá trị cho mọi cột trong bảng. Đôi khi, chúng tôi có thể quyết định chèn giá trị vào một số cột và để trống phần còn lại của các cột. Đối với những trường hợp đó, chúng tôi chỉ cần chỉ định tên cột mà chúng tôi muốn chèn giá trị vào trong câu lệnh SQL của chúng tôi. Dưới đây là một ví dụ:

INSERT INTO Store_Information (Store_Name, Sales, Txn_Date)
VALUES ('New York', 500, 'Jan-10-1999');

Now the table becomes:

Table Store_Information

 Store_Name  Manager_ID  Sales  Txn_Date 
 Los Angeles  10  900  Jan-10-1999 
 New York     500  Jan-10-1999 

Trong trường hợp này, giá trị cho cột Manager_ID ở hàng thứ hai là NULL . NULL có nghĩa là dữ liệu không tồn tại và chúng ta sẽ thảo luận về khái niệm NULL ở phần sau của hướng dẫn này.

Bài tập

1. Giả sử chúng ta bắt đầu với bảng Store_Information được hiển thị ở trên. Bảng trông như thế nào sau khi câu lệnh SQL sau được thực thi?
INSERT INTO Store_Information VALUES ('San Jose', 25,700, 'Jan-10-1999');

2. Continuing with Question 1. What does the table look like after the following SQL statement is executed?
INSERT INTO Store_Information (Manager_ID, Txn_Date, Sales) VALUES (10,600, 'Jan-11-1999');

3. Sử dụng bảng tương tự như trên. Bảng trông như thế nào sau khi câu lệnh SQL sau được thực thi?
INSERT INTO Store_Information ('Portland', 30,650, 'Jan-11-1999');



Xem thêm:


Chia sẻ: