Caranya adalah dengan menambahkan WHERE pada statement INSERT Anda sehingga INSERT hanya berfungsi jika item tersebut tidak ada, diikuti dengan pernyataan SELECT. Misalkan catatan dapat diidentifikasi dengan kolom ID Anda akan menulis:
INSERT INTO MyTable (ID,Col1,Col2,...)
SELECT @IDValue,@Col1Value,@Col2Value, ...
WHERE NOT EXISTS (SELECT ID
FROM MyTable
WHERE [email protected])
SELECT *
FROM MyTable
Where [email protected]
Anda tidak perlu memasukkan pernyataan dalam transaksi karena setiap pernyataan dieksekusi dalam transaksi implisitnya sendiri. Jadi, tidak mungkin dua INSERT akan berhasil pada saat yang bersamaan.
EDIT :Sintaks INSERT ... SELECT diperlukan karena TSQL tidak mengizinkan bagian VALUES dan WHERE dalam pernyataan INSERT.