Câu lệnh UPDATE là một lệnh rất cơ bản và trong số những lệnh được sử dụng nhiều nhất trong MySQL. Vì thế để làm việc được với MySQL thì bạn cần nắm chắc được cách dùng của lệnh này. Cùng tìm hiểu trong bài viết này nhé.
Câu lệnh UPDATE trong MysQL
UPDATE là lệnh truy vấn được sử dụng để chỉnh sửa những bản ghi đã tồn tại trong bảng. Bạn có thể sử dụng kết hợp mệnh đề WHERE với lệnh UPDATE để cập nhật các hàng được chọn, nếu không muốn tất cả các hàng trong bảng bị ảnh hưởng.
Cú pháp lệnh Update
UPDATE TEN_BANG
SET cot1 = gia_tri1, cot2 = gia_tri2...., cotN = gia_triN
WHERE [DIEU_KIEN];
Trong đó:
- TEN_BANG: Là tên bảng cần update dữ liệu
- cot1, cot2, cotN: Là tên của các cột cần thay đổi giá trị trong bảng.
- gia_tri1, gia_tri2, gia_triN: Giá trị thay đổi tương ứng của cột.
- DIEU_KIEN: Đặt điều kiện truy vấn.
Nếu muốn sử dụng nhiều hơn một điều kiện trong WHERE, bạn đừng quên toán tử AND và OR mà chúng ta đã biết tới trong bài viết “Các toán tử OR, AND và NOT trong MySQL – Toán tử hoặc, và, phủ định” này nhé.
Ví dụ áp dụng
Mình có sẵn bảng users chèn dữ liệu như bên dưới ảnh.
Update 1 bản ghi với điều kiện cụ thể
Trong dòng đầu tiền, tức user có id là 6 đang có cột name là NULL(rỗng), vậy mình dùng lệnh UPDATE để thay đổi tên cho user này là “Nguyen Van Hung“.
UPDATE `users`
SET name = "Nguyen Van Hung"
WHERE id = 6
Kết quả:
>>XEM THÊM: Lệnh DELETE trong MySQL – Lệnh xóa bản ghi
Update nhiều bản ghi
Trong ví dụ bảng users bên trên có 2 tài khoản đều có name là “tuicocach“, vậy mình muốn thay đổi tên cho cả 2 user này mật khẩu sẽ đều là 1111111, câu lệnh cụ thể sẽ nhưu sau.
UPDATE `users`
SET pass = "1111111"
WHERE name = "tuicocach"
Kết quả sau khi chạy lệnh trên, bảng ban đầu sẽ bị thay đổi thành bên dưới.
Update toàn bộ các bản ghi
Nếu muốn chỉnh sửa tất cả các giá trị trong một cột, ví dụ trong bảng users trên thay đổi tất cả mật khẩu người dùng thành “1“. Như vậy ta chỉ cần viết lệnh UPDATE như thường nhưng bỏ điều kiện WHERE đi, nhưng bạn cần chú ý là khi bỏ điều kiện WHERE tất cả các hàng sẽ bị ảnh hưởng và không thể back được dữ liệu về trước đó. Câu lệnh cụ cụ thể như sau.
UPDATE `users`
SET pass = 1
Bảng dữ liệu sau khi chạy lệnh UPDATE với pass = 1 và bỏ đi mệnh đề điều kiện.
>>XEM THÊM: Cách sử dụng ràng buộc NOT NULL trong MySQL – NOT NULL MySQL
Cảm ơn bạn đã đọc hết bài viết! Chúc Bạn học tốt!
[XEM TẤT CẢ CÁC BÀI HƯỚNG DẪN MYSQL TẠI ĐÂY]
XEM THÊM Lệnh DELETE trong MySQL – Lệnh xóa bản ghi Tìm hiểu thuộc tính AUTO_INCREMENT trong MySQL – Giá trị tự tăng dần Câu lệnh CREATE TABLE trong MySQL – Lệnh tạo bảng mới Câu lệnh INSERT INTO trong MySQL – Lệnh chèn dữ liệu vào bảng Mệnh đề WHERE trong MySQL – Mệnh đề điều kiện