Lệnh INSERT trong Oracle

Lệnh INSERT dùng để thêm dữ liệu vào bảng, lệnh này được sử dụng nhiều nhất khi thao tác với cơ sở dữ liệu Oracle.

Chúng ta có hai các thêm record đó là thêm một record bằng lệnh INSERT và nhiều record bằng lệnh INSERT ALL.

1. Lệnh Insert trong Oracle

Lệnh INSERT dùng để thêm một record vào bảng, cú pháp như sau:

INSERT INTO table  
(column1, column2, ... column_n )  
VALUES  
(expression1, expression2, ... expression_n ); 

Trong đó mỗi column sẽ tương ứng với giá trị mà bạn truyền vào ở VALUES, tức thứ tự của nó sẽ tương ứng với nhau.

Ví dụ
INSERT INTO suppliers  
(supplier_id, supplier_name)  
VALUES  
(50, 'Flipkart'); 

2. Insert kết hợp lệnh Select

Giả sử bạn muốn thêm dữ liệu vào bảng bằng dữ liệu có sẵn ở một bảng nào đó trong database thì hãy kết hợp với lệnh select nhé, cú pháp như sau:

Cú pháp
INSERT INTO table  
(column1, column2, ... column_n )  
SELECT expression1, expression2, ... expression_n  
FROM source_table  
WHERE conditions;  

Trong đó giá trị của các column chính là giá trị của lệnh select trả về.

Ví dụ
INSERT INTO suppliers  
(supplier_id, supplier_name)  
SELECT age, address  
FROM customers  
WHERE age > 20;  

3. Insert nhiều dòng cùng một lúc

Nếu bạn muốn thêm nhiều record bằng một dòng lệnh duy nhất thì hãy kết hợp lệnh Insert với Insert All nhé.

Cú pháp
INSERT ALL  
  INTO table_name (column1, column2, column_n) VALUES (expr1, expr2, expr_n)  
  INTO table_name(column1, column2, column_n) VALUES (expr1, expr2, expr_n)  
  INTO table_name (column1, column2, column_n) VALUES (expr1, expr2, expr_n)  
SELECT * FROM dual;  

Lưu ý: Trong các câu insert phía trong bạn có thể insert cho nhiều bảng.

Ví dụ insert 1 bảng
INSERT ALL  
  INTO suppliers (supplier_id, supplier_name) VALUES (20, 'Google')  
  INTO suppliers (supplier_id, supplier_name) VALUES (21, 'Microsoft')  
  INTO suppliers (supplier_id, supplier_name) VALUES (22, 'Apple')  
SELECT * FROM dual;  

Ví dụ insert nhiều bảng
INSERT ALL  
  INTO suppliers (supplier_id, supplier_name) VALUES (30, 'Google')  
  INTO suppliers (supplier_id, supplier_name) VALUES (31, 'Microsoft')  
  INTO customers (age, name, address) VALUES (29, 'Luca Warsi', 'New York')  
SELECT * FROM dual;  

Lời kết

Như vậy mình đã giới thiệu sơ lược về cách sử dụng lệnh insert trong Oracle. bài này mình sẽ dừng tại đây, hẹn gặp lại các bạn tại bài tìm hiểu lệnh update trong Oracle.

-------------------#####-------------------

Lưu ý: bài viết có tham khảo hoặc dịch lại từ http://javatpoint.com.

Nguồn: freetuts.net