レコード確認してからのINSERT
レコードがない場合に限りinsertする方法。キーにしてエラーにすればよいって言われるのはわかっているけど、エラーメッセージ見たくない(見せたくない)人向け。
INSERT INTO テーブル(col1, col2) SELECT '値1', '値2' FROM DUAL WHERE NOT EXISTS(SELECT 'X' FROM テーブル WHERE col1 = '確認したい値');
テーブルの検索結果をNOT EXISTSで判定して、INSERT SELECTでインサートする。
参考サイトは以下。