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

MySQLアトミック挿入-if-not-existswith安定した自動インクリメント

    問題は、重複が予想される場合にデータを正規化する方法についてです。そして、IDを「焼き付ける」ことは避けてください。

    http://mysql.rjweb.org/doc.php/staging_table#normalization 2段階のプロセスについて説明し、行の高速取り込みによる大量の更新を目的としています。単一の行に縮退しますが、それでも2つのステップが必要です。

    ステップ1INSERTs 新しい 行、新しいauto_incIDを作成します。

    ステップ2は、IDをまとめてプルバックします。

    作業は、autocommit =ONを使用し、データをロードしているメイントランザクションの外部で行うのが最適であることに注意してください。これにより、IDを焼き付ける余分な原因、つまり潜在的なロールバックを回避できます。




    1. MySQLで非数字を置き換える方法は?

    2. MySql-複数のテーブルから読み取るビューを作成します

    3. DataTableをMySqlデータベースC#に更新します

    4. 複数の行を更新するmysql