Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menyelesaikan Ralat SQLite 1555: Kekangan UNIK Gagal pada Persons.id?

Bagaimana untuk Menyelesaikan Ralat SQLite 1555: Kekangan UNIK Gagal pada Persons.id?

Linda Hamilton
Lepaskan: 2024-12-20 15:49:11
asal
470 orang telah melayarinya

How to Resolve SQLite Error 1555: UNIQUE Constraint Failed on Persons.id?

SQLITE_CONSTRAINT_PRIMARYKEY: Kod Keputusan SQLite 1555 - Kekangan UNIK Gagal: Persons.id

Mesej ralat anda menunjukkan kekangan UNIK semasa pelanggaran memasukkan data pangkalan data SQLite anda. Secara khususnya, ini mencadangkan bahawa lajur id dalam jadual Orang sudah mengandungi nilai yang sama seperti yang anda cuba masukkan.

Dalam kod yang anda berikan, anda telah menetapkan lajur id sebagai kunci utama untuk kedua-dua jadual pengguna dan item, yang memastikan setiap baris mempunyai pengecam unik. Walau bagaimanapun, nampaknya anda mempunyai entri pendua sama ada dalam jadual pengguna atau item, mengakibatkan pelanggaran kekangan UNIK.

Untuk menyelesaikan isu ini, anda boleh sama ada:

  • Ubah suai penyata sisipan data: Pastikan setiap penyata sisipan termasuk nilai id unik untuk baris yang sepadan. Anda boleh menjana ID unik menggunakan fungsi seperti UUID(), RANDOM() (dengan versi SQLite >=3.9), atau dengan menggunakan lajur kunci utama yang meningkat secara automatik.
  • Gunakan INSERT OR ABAIKAN atau MASUKKAN ATAU GANTIKAN kenyataan: Pernyataan ini membolehkan anda memintas semakan kekangan UNIK. INSERT OR IGNORE akan mengabaikan entri pendua dan terus memasukkan rekod lain, manakala INSERT OR REPLACE akan menggantikan entri sedia ada dengan nilai baharu.

Berikut ialah contoh menggunakan INSERT OR IGNORE:

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat SQLite 1555: Kekangan UNIK Gagal pada Persons.id?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan