SQLite: Memasukkan Rekod Hanya Jika Ia Tidak Wujud
Dalam SQLite, sintaks IF NOT EXISTS yang digunakan dalam Microsoft SQL Server bukan disokong secara langsung. Ini boleh menjadi satu cabaran apabila cuba memasukkan rekod sambil memastikan keunikannya.
Penyelesaian 1: INSERT OR IGNORE
Satu penyelesaian ialah menggunakan arahan INSERT OR IGNORE. Sintaks ini membolehkan anda memasukkan rekod baharu ke dalam jadual, tetapi jika rekod dengan kunci yang sama sudah wujud, sisipan akan diabaikan. Contohnya:
INSERT OR IGNORE INTO EVENTTYPE (EventTypeName) VALUES 'ANI Received';
Penyelesaian 2: SELECT dan INSERT
Pendekatan lain ialah menggunakan gabungan pernyataan SELECT dan pernyataan INSERT:
INSERT INTO EVENTTYPE (EventTypeName) SELECT 'ANI Received' WHERE NOT EXISTS (SELECT 1 FROM EVENTTYPE WHERE EventTypeName = 'ANI Received');
Sintaks ini menyemak sama ada rekod dengan EventTypeName yang ditentukan sudah wujud. Jika tidak, pernyataan INSERT dilaksanakan dan rekod baharu ditambahkan pada jadual.
Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Rekod ke dalam SQLite Hanya Jika Ia Belum Wujud?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!