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

トリッキーなMySQLバッチクエリ

    自動インクリメント列を使用しないでください。挿入する前に参照IDを事前に割り当ててください。そうすれば、一括挿入を使用して依存関係を削除できます。

    更新:

    1. データベースから既存のIDを選択します(理想的には、すべての既知のデータを1回選択します)。

    2. 既知のIDで挿入するデータを強化します。 (データベース内のテーブルの主キーに対応する各アイテムのキーを計算し、それを使用してデータベースのIDでアイテムを更新します)-最終的にデータをで知っているアイテムに分割しますデータベースであるため、既知のIDがあり、データベースに存在しないデータがあるため、キーを割り当てる必要があります。私はあなたのテーブルがIDだけではない主キーを持っていると仮定しています-そうでなければ、データベースはあなたがすでにデータベースにデータを持っていることを他の方法で知るでしょう。

    3. IDのないレコードに新しいIDを割り当てます。

    4. データベース内のデータを一括置換します(1つのステートメントで複数の行を挿入します)。



    1. mysqlコマンドラインで高精度のクエリ時間を確認するにはどうすればよいですか?

    2. List<string>をSQLパラメータに渡す

    3. H2postgresqlモードが機能していないようです

    4. PostgreSQLクエリの実行時間を取得する