Mengelakkan Sisipan Pendua dalam SQLite
SQLite, enjin pangkalan data ringan yang popular, tidak mempunyai sokongan eksplisit untuk klausa JIKA TIDAK WUJUD yang biasa ditemui di bahagian lain pelaksanaan SQL. Halangan ini boleh membingungkan pembangun yang biasa memanfaatkan kefungsian sedemikian untuk mengelakkan sisipan rekod pendua.
Untuk memintas pengehadan ini, SQLite menawarkan beberapa penyelesaian. Satu pendekatan ialah menggunakan perintah INSERT OR IGNORE:
INSERT OR IGNORE INTO EVENTTYPE (EventTypeName) VALUES ('ANI Received');
Arahan ini akan memasukkan rekod baharu jika EventTypeName yang ditentukan belum wujud dalam jadual EVENTTYPE.
Pilihan lain ialah untuk menggunakan subquery dalam pernyataan INSERT:
INSERT INTO EVENTTYPE (EventTypeName) SELECT 'ANI Received' WHERE NOT EXISTS (SELECT 1 FROM EVENTTYPE WHERE EventTypeName = 'ANI Received');
Pendekatan ini menyemak kewujudan rekod sebelum memasukkannya, dengan berkesan mencapai hasil yang sama seperti klausa JIKA TIDAK WUJUD.
Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan Entri Pendua Apabila Memasukkan Data ke dalam SQLite?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!