Câu lệnh UPDATE trong MySQL
Trần Thị Vân
- 1142
- 13/08/2025
Chức năng của Câu lệnh UPDATE trong MySQL
Câu lệnh UPDATE trong MySQL dùng để cập nhật lại giá trị của một hoặc nhiều cột của một bảng với từng điều kiện khác nhau tùy theo từng mục đích.
Code Câu lệnh UPDATE trong MySQL
update tb_sanpham set ten='Micro AKG D7 S' where id=7;
<?php
$dbhost = 'localhost';
$dbuser = 'webmoi_userdata'; // Tên username
$dbpass = 'xgZwEfQWE'; // Mật khẩu
// Kết nối đến tên username
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn ){
die('Không kết nối được: ' . mysql_error());
}
// Chọn tên database
mysql_select_db('webmoi_tendata');
// Xét kiểu tiếng việt
mysql_query('SET NAMES "utf8"');
// Cập nhật tên sản phẩm có id =7
$sql ="update tb_sanpham set ten='Micro AKG D7 S' where id=7";
$ketquain = mysql_query($sql,$conn);
if(!$ketquain){
die('Không thể lấy dữ liệu: ' . mysql_error());
}else{
echo "Cập nhật sản phẩm có id bằng 7 thành tên 'Micro AKG D7 S' thành công!<br>";
}
echo "<b>Xem lại bảng sau khi cập nhật sản phẩm</b><br>";
// Truy vấn bảng
$sql = "select id,ten,gia from tb_sanpham";
// Kết quả truy vấn trả về mảng
$ketqua = mysql_query($sql,$conn);
if(!$ketqua){
die('Không thể lấy dữ liệu: ' . mysql_error());
}
// Dùng vòng lặp để lấy ra từng hàng trong bảng
while($row = mysql_fetch_array($ketqua, MYSQL_ASSOC)){
echo
"ID: {$row['id']} <br> ".
"Tên sản phẩm: {$row['ten']} <br> ".
"Giá : {$row['gia']} <br> ".
"--------------------------------<br>";
}
// Đóng kết nối database
mysql_close($conn);
?>
Kết quả:
Cập nhật sản phẩm có id bằng 7 thành tên 'Micro AKG D7 S' thành công!
Xem lại bảng sau khi được thêm sản phẩm
ID: 1
Tên sản phẩm: Dàn karaoke gia đình KTreasure FE12 thương hiệu Đức
Giá : 55000000
--------------------------------
ID: 2
Tên sản phẩm: Dàn karaoke gia đình KTreasure TD12 mới nhất
Giá : 44550000
--------------------------------
ID: 3
Tên sản phẩm: Dàn âm thanh nghe nhạc AV01
Giá : 25000000
--------------------------------
ID: 4
Tên sản phẩm: Dàn âm thanh nghe nhạc AV02
Giá : 30000000
--------------------------------
ID: 5
Tên sản phẩm: Micro Shure Beta 87A
Giá : 7000000
--------------------------------
ID: 6
Tên sản phẩm: Micro Shure SM58-LC
Giá : 2700000
--------------------------------
ID: 7
Tên sản phẩm: Micro AKG D7 S
Giá : 3400000
--------------------------------
Cách sử dụng UPDATE trong MySQL an toàn và hiệu quả
Khi làm việc với dữ liệu thực tế, câu lệnh UPDATE thường không chỉ thay đổi một giá trị duy nhất. Việc xác định đúng cột cần sửa, phạm vi bản ghi và điều kiện áp dụng giúp hạn chế cập nhật nhầm dữ liệu. Đặc biệt, nên kiểm tra điều kiện trước khi thực hiện trên bảng có nhiều bản ghi.
Cập nhật nhiều cột trong cùng một câu lệnh
MySQL cho phép thay đổi nhiều cột trong một lần UPDATE bằng cách đặt các cặp tên_cột = giá_trị_mới cách nhau bởi dấu phẩy. Cách này phù hợp khi một bản ghi cần thay đổi đồng thời nhiều thông tin.
UPDATE users
SET name = 'Nguyen Van An',
email = 'an@example.com',
status = 'active'
WHERE id = 10;
Trong ví dụ trên, bản ghi có id = 10 được cập nhật ba cột cùng lúc. Điều kiện WHERE giúp giới hạn phạm vi thay đổi, tránh tác động đến những bản ghi khác.
Cập nhật nhiều dòng theo điều kiện
UPDATE có thể thay đổi nhiều dòng nếu các dòng đó cùng thỏa mãn điều kiện. Đây là cách hữu ích khi cần điều chỉnh dữ liệu theo nhóm thay vì xử lý từng bản ghi riêng lẻ.
UPDATE products
SET status = 'out_of_stock'
WHERE quantity = 0;
Câu lệnh trên sẽ chuyển trạng thái của tất cả sản phẩm có số lượng bằng 0. Vì vậy, trước khi chạy UPDATE, cần xác định rõ điều kiện để chắc chắn tập dữ liệu được chọn là chính xác.
Những lưu ý để tránh UPDATE nhầm dữ liệu
Rủi ro lớn nhất khi sử dụng UPDATE là bỏ sót điều kiện WHERE hoặc đặt điều kiện quá rộng. Nếu không có WHERE, MySQL có thể cập nhật toàn bộ các dòng trong bảng.
UPDATE users
SET status = 'inactive';
Câu lệnh trên sẽ thay đổi trạng thái của toàn bộ người dùng. Khi chỉ muốn sửa một nhóm hoặc một bản ghi, nên luôn kiểm tra điều kiện trước khi thực hiện.
Một cách an toàn là chạy SELECT với cùng điều kiện để xem trước những dòng sẽ bị tác động. Sau khi xác nhận kết quả đúng, mới chuyển sang UPDATE. Với dữ liệu quan trọng, nên sao lưu hoặc thực hiện trong transaction để có thể kiểm soát thay đổi khi phát sinh sai sót.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Câu lệnh UPDATE trong MySQL.
Tải file database .sql về nếu muốn kiểm tra hoặc thực hành Tải về.
- 0 Bình luận
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *