2011-12-28 26 views
9

Ai đó có thể giải thích sự khác nhau giữa REPLACE, INSERT và UPDATE trong MySql không?Sự khác nhau giữa REPLACE, INSERT, UPDATE trong MySql là gì?

+0

Bạn có thể làm rõ câu hỏi của mình không? REPLACE, UPDATE và INSERT ... Họ rõ ràng đang làm những việc khác nhau. – Raptor

+0

Có lẽ bạn đang đề cập đến ['INSERT ... ON UPDATE DUPLICATE KEY UPDATE'] (http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html)? –

+4

'INSERT' chèn,' UPDATE' cập nhật các hàng có mệnh đề 'WHERE' khớp,' REPLACE' "hoạt động giống như INSERT, ngoại trừ nếu hàng cũ trong bảng có cùng giá trị với hàng mới cho khóa CHÍNH hoặc một chỉ số UNIQUE, hàng cũ bị xóa trước khi hàng mới được chèn vào. " http://dev.mysql.com/doc/refman/5.5/en/replace.html – deceze

Trả lời

17

Đây là những tuyên bố hoàn toàn khác nhau.

  • Chèn: Chèn kỷ lục mới

  • Cập nhật: Cập nhật bản ghi hiện có

  • Thay: hoạt động chính xác như INSERT, ngoại trừ rằng nếu một hàng cũ trong bảng có cùng một giá trị như một hàng mới cho một khóa CHÍNH hoặc một chỉ số UNIQUE, hàng cũ bị xóa trước khi hàng mới được chèn

Chúc mừng!

Prasad.

Các vấn đề liên quan