Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cập nhật giá trị cho hàng và cột cụ thể trong MySQL

Dùng câu lệnh UPDATE ... SET ... WHERE để thay đổi giá trị của một cột tại hàng xác định bởi điều kiện.

Ví dụ minh họa

Tạo bảng và chèn dữ liệu:

CREATE TABLE DemoTable1569 (
    StudentId VARCHAR(10),
    StudentName VARCHAR(20)
);
INSERT INTO DemoTable1569 VALUES 
('John_12', 'John Smith'),
('David_321', 'Carol Taylor'),
('David_989', 'David Miller');

Cập nhật StudentId của hàng có StudentName = 'Carol Taylor':

UPDATE DemoTable1569
SET StudentId = 'Carol_321'
WHERE StudentName = 'Carol Taylor';

Kết quả

StudentIdStudentName
John_12John Smith
Carol_321Carol Taylor
David_989David Miller

Lưu ý quan trọng

  • Luôn có WHERE — thiếu WHERE sẽ cập nhật TOÀN BỘ bảng.
  • Điều kiện WHERE nên dùng khóa chính hoặc cột duy nhất để đảm bảo chỉ cập nhật 1 hàng.
  • Kiểm tra trước bằng SELECT: SELECT * FROM DemoTable1569 WHERE StudentName = 'Carol Taylor';
  • Sử dụng LIMIT 1 nếu không chắc chắn điều kiện duy nhất: UPDATE ... WHERE ... LIMIT 1;
  • Kết quả trả về: Rows matched: 1 Changed: 1 Warnings: 0 — xác nhận 1 hàng khớp và 1 hàng thay đổi.

Cập nhật nhiều cột cùng lúc

UPDATE DemoTable1569
SET StudentId = 'Carol_321', StudentName = 'Carol Taylor Smith'
WHERE StudentId = 'David_321';