Apakah Anda benarkah memiliki kunci asing? Harus ada cara untuk mendeklarasikan kombinasi table1.key-->table2.key ini unik. Yang akan menghasilkan kesalahan SQL biasa, saat membuat pasangan entri yang sudah ada. Inilah yang saya suka tentang kunci asing. Ini sangat bersih, karena kecerdasan pada entri (tidak) yang diizinkan tetap berada di level basis data.
Anda punya tabel A_B yang berisi tugas bukan? A.id 88 termasuk B.id 99 ... dst?
Dan Anda berencana memasukkan SATU A-Record yang digabungkan dengan n B-Records? Mengapa tidak - jika nilai baru adalah A=99 dan B:10, 11, 12, 17, 18, 20
SELECT b_id
FROM A_B
WHERE a_id = 99
AND b_id IN (10, 11, 12, 17, 18, 20);
Ini akan menghasilkan daftar b_id yang tidak boleh Anda masukkan lagi ... ATAU hasil kosong (semua entri baru).