Cơ sở dữ liệu H2 - Cập nhật

Truy vấn UPDATE được sử dụng để cập nhật hoặc sửa đổi các bản ghi hiện có trong bảng. Chúng ta có thể sử dụng mệnh đề WHERE với truy vấn UPDATE để cập nhật các hàng đã chọn, nếu không tất cả các hàng sẽ bị ảnh hưởng.

Cú pháp

Sau đây là cú pháp cơ bản của truy vấn UPDATE.

UPDATE tableName [ [ AS ] newTableAlias ] SET 
{ { columnName = { DEFAULT | expression } } [,...] } | 
{ ( columnName [,...] ) = ( select ) } 
[ WHERE expression ] [ ORDER BY order [,...] ] [ LIMIT expression ]

Trong cú pháp UPDATE này, chúng ta có thể kết hợp nhiều hơn một điều kiện bằng cách sử dụng mệnh đề AND hoặc OR.

Thí dụ

Hãy xem xét bảng KHÁCH HÀNG có các bản ghi sau.

+----+----------+-----+-----------+----------+ 
| ID | NAME     | AGE | ADDRESS   | SALARY   | 
+----+----------+-----+-----------+----------+ 
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 | 
|  2 | Khilan   |  25 | Delhi     |  1500.00 | 
|  3 | kaushik  |  23 | Kota      |  2000.00 | 
|  4 | Chaitali |  25 | Mumbai    |  6500.00 | 
|  5 | Hardik   |  27 | Bhopal    |  8500.00 | 
|  6 | Komal    |  22 | MP        |  4500.00 | 
|  7 | Muffy    |  24 | Indore    | 10000.00 | 
+----+----------+-----+-----------+----------+

Nếu bạn muốn lấy bảng khách hàng cùng với dữ liệu đã cho, hãy thực hiện các truy vấn sau.

CREATE TABLE CUSTOMER (id number, name varchar(20), age number, address varchar(20), 
   salary number);  
INSERT into CUSTOMER values (1, 'Ramesh', 32, 'Ahmedabad', 2000); 
INSERT into CUSTOMER values (2, 'Khilan', 25, 'Delhi', 1500); 
INSERT into CUSTOMER values (3, 'kaushik', 23, 'Kota', 2000); 
INSERT into CUSTOMER values (4, 'Chaitali', 25, 'Mumbai', 6500); 
INSERT into CUSTOMER values (5, 'Hardik', 27, 'Bhopal', 8500); 
INSERT into CUSTOMER values (6, 'Komal', 22, 'MP', 4500); 
INSERT into CUSTOMER values (7, 'Muffy', 24, 'Indore', 10000);

Lệnh sau là một ví dụ, sẽ cập nhật ADDRESS cho khách hàng có ID là 6 -

UPDATE CUSTOMERS SET ADDRESS = 'Pune' WHERE ID = 6;

Bây giờ, bảng CUSTOMERS sẽ có các bản ghi sau. Chúng tôi có thể kiểm tra bản ghi bảng khách hàng bằng cách thực hiện truy vấn sau.

SELECT * FROM CUSTOMERS;

Truy vấn trên tạo ra kết quả sau.

+----+----------+-----+-----------+----------+ 
| ID | NAME     | AGE | ADDRESS   | SALARY   | 
+----+----------+-----+-----------+----------+ 
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 | 
|  2 | Khilan   |  25 | Delhi     |  1500.00 | 
|  3 | kaushik  |  23 | Kota      |  2000.00 | 
|  4 | Chaitali |  25 | Mumbai    |  6500.00 | 
|  5 | Hardik   |  27 | Bhopal    |  8500.00 | 
|  6 | Komal    |  22 | Pune      |  4500.00 | 
|  7 | Muffy    |  24 | Indore    | 10000.00 | 
+----+----------+-----+-----------+----------+

Để sửa đổi tất cả các giá trị cột ĐỊA CHỈ và LƯƠNG trong bảng KHÁCH HÀNG, chúng ta không cần sử dụng mệnh đề WHERE. Truy vấn UPDATE sẽ như sau:

UPDATE CUSTOMERS SET ADDRESS = 'Pune', SALARY = 1000.00;

Bây giờ, bảng CUSTOMERS sẽ có các bản ghi sau. Chúng tôi có thể kiểm tra bản ghi bảng khách hàng bằng cách thực hiện truy vấn sau.

SELECT * FROM CUSTOMERS;

Truy vấn trên tạo ra kết quả sau:

+----+----------+-----+---------+---------+ 
| ID | NAME     | AGE | ADDRESS | SALARY  | 
+----+----------+-----+---------+---------+ 
|  1 | Ramesh   |  32 | Pune    | 1000.00 | 
|  2 | Khilan   |  25 | Pune    | 1000.00 | 
|  3 | kaushik  |  23 | Pune    | 1000.00 | 
|  4 | Chaitali |  25 | Pune    | 1000.00 | 
|  5 | Hardik   |  27 | Pune    | 1000.00 | 
|  6 | Komal    |  22 | Pune    | 1000.00 | 
|  7 | Muffy    |  24 | Pune    | 1000.00 | 
+----+----------+-----+---------+---------+