挿入クエリを実行したが重複したキーエラーのために失敗した場合、別の選択を行わずにプライマリキーを取得する方法はありますか?基本的にはDUPLICATE KEYエラーの後にプライマリキーを取得しますか?
:1フィールド:myvalue IDを持つレコードがすでに存在するため
INSERT INTO tbl (field) VALUES ('myvalue')
これが失敗しました。別のクエリを実行せずに1:
今、私はそのIDを知りたい
SELECT id FROM tbl WHERE field = 'myvalue'
は、それがpossibileですか?
どのようにして 'IDを得るのですか?それはデフォルト値ですか?あなたは 'AUTO_INCREMENT'を持ってはいけませんか? – Halcyon
SQLを匿名化した可能性があります。 'field'(' id'の代わりに)がキーされたフィールドでなければ、最初のクエリがどのようにしてプライマリキーエラーを引き起こすのか分かりません。 –
フィールドはユニークで、もちろんIDのような例です:X – dynamic