sql >> データベース >  >> RDS >> Mysql

mysqlに複数の同じIDを同時に挿入することを回避する

    シーケンス を使用したい 。

    2つの注意事項:

    • AUTO_INCREMENT この記事で説明されている機能は非標準であり、別のデータベースに移動するときに移植性の問題が発生する可能性があります。

    • INSERTの場合 が中止されても、シーケンスの数値はまだ消費されているため、シーケンスに穴が開いてしまう可能性があります。それが受け入れられない場合は、プライマリ(代理)キーに自動生成されたシーケンスを使用し、そのキーとは別のマップを「公式」シーケンス番号に追加して、そのテーブルのインデックスに一意性を適用します。

    別の方法は、UNIQUEを適用することです データベース内で、適切なTRANSACTION ISOLATION LEVELを使用します。 INSERTの失敗を処理するアプリケーションロジックを追加します 。



    1. unix_timestamp(MySQL)のデータ型は何ですか?

    2. ファイルまたはアセンブリを読み込めませんでした'本番データベースにアプリケーションをデプロイするときにSystem.Dataエラーが発生しました

    3. 複数の行を返すサブクエリで行を更新する

    4. 異なるバージョンのMySQLGroupBy機能