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

ngăn chặn các mục nhập trùng lặp vào cơ sở dữ liệu

Xin lỗi khi nói rằng đây là cách tiếp cận sai.

Cơ sở dữ liệu được tích hợp sẵn hệ thống để ngăn dữ liệu bị trùng lặp. Đó là thông qua các khóa chính hoặc các ràng buộc khóa duy nhất. Trong trường hợp của bạn, bạn đã tạo khóa chính. Vì vậy, bạn hoàn toàn không cần phải làm điều đó SELECT COUNT(*) truy vấn.

Thay vào đó, chỉ cần chèn trực tiếp vào bảng và bắt lỗi toàn vẹn khi pcode đã tồn tại.

Try
    cmd = New MySqlCommand("Insert into personnel values('" & pcode.Text & "','" & lname.Text & "','" & fname.Text & "','" & office.Text & "','" & designation.Text & "')")

    i = cmd.ExecuteNonQuery


    If pcode.Text <> "" Then
    ElseIf i > 0 Then
        MsgBox("Save Successfully!", MessageBoxIcon.Information, "Success")
        mrClean()
        ListView1.Tag = ""
        Call objLocker(False)
        Call LVWloader()
        Call calldaw()
    Else
        MsgBox("Save Failed!", MessageBoxIcon.Error, "Error!")
    End If
Catch ex As MySqlException
    MsgBox("Personnel ID Already Exist!", MessageBoxIcon.Error, "Error!")
End Try

Vui lòng tham khảo Trang hướng dẫn sử dụng MySQL KEY CHÍNH và Ràng buộc chỉ mục DUY NHẤT



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách kết nối Flaming với cơ sở dữ liệu mysql localhost

  2. LỖI:Không thể tạo tiện ích mở rộng gốc đá quý - Lỗi khi cài đặt mysql2

  3. PHP PDOException:SQLSTATE [HY093]:Số tham số không hợp lệ

  4. Lỗi chèn trích dẫn đơn trong MySQL

  5. Không thể tìm nạp dữ liệu từ cơ sở dữ liệu vào thẻ tập lệnh trong khi sử dụng biểu đồ