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

Làm thế nào để xử lý lỗi cho các mục nhập trùng lặp?

Để kiểm tra lỗi cụ thể này, bạn cần tìm mã lỗi . Nó là 1062 đối với khóa trùng lặp. Sau đó, sử dụng kết quả từ errno() để so sánh với:

mysqli_query('INSERT INTO ...');
if (mysqli_errno() == 1062) {
    print 'no way!';
}

Lưu ý về phong cách lập trình
Bạn nên luôn tránh sử dụng số ma thuật (Tôi biết, tôi là người giới thiệu nó trong câu trả lời này). Thay vào đó, bạn có thể gán mã lỗi đã biết (1062 ) thành một hằng số (ví dụ:MYSQLI_CODE_DUPLICATE_KEY ). Điều này sẽ giúp mã của bạn dễ duy trì hơn như một điều kiện trong if câu lệnh vẫn có thể đọc được sau một vài tháng khi ý nghĩa của 1062 đã mờ dần khỏi bộ nhớ :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mẹo nhanh về MySQL:Sử dụng lệnh DROP USER

  2. Làm thế nào để tách chuỗi tên trong mysql?

  3. Không thể kết nối với máy chủ cơ sở dữ liệu (bàn làm việc mysql)

  4. Làm thế nào để cài đặt mô-đun Python MySQLdb bằng pip?

  5. Hỗ trợ PDO cho nhiều truy vấn (PDO_MYSQL, PDO_MYSQLND)