Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Ràng buộc duy nhất, cách tránh trùng lặp

Thực thi ràng buộc duy nhất bằng cách tạo một khóa duy nhất:

ALTER TABLE the_table
ADD UNIQUE INDEX nid_language_unique (nid, language);

Ràng buộc này cấm hai hàng có cùng nid và ngôn ngữ.

Bất kỳ truy vấn nào cố gắng vi phạm ràng buộc sẽ không thành công.

Khi bạn muốn bỏ qua lỗi (và vẫn hủy bỏ truy vấn), bạn có thể sử dụng CHÈN BỎ QUA CẬP NHẬT BỎ QUA :

INSERT IGNORE INTO the_table (nid, language) VALUES (8, 'Chinese')
/* row not inserted and no error */


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thay thế giá trị trong một chuỗi được phân tách bằng dấu phẩy trong MySQL?

  2. MySQL - Đặt tên cột cho ID khi tạo?

  3. Chèn vào cơ sở dữ liệu (mysql) bằng Ajax và PHP

  4. LỖI 1064 (42000):Bạn có lỗi trong cú pháp SQL của mình; kiểm tra hướng dẫn sử dụng tương ứng với phiên bản máy chủ MySQL của bạn để biết cú pháp phù hợp để sử dụng

  5. Chạy script với EntityManager JPA trên Mysql