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

Active Recordに一括挿入するために作成されたIDのリストを取得するにはどうすればよいですか?

    現時点では、最善の(ただし理想的ではない)解決策は、「activerecord-import」 。残念ながら、そのgemは挿入されたIDを返さないため、IDを取得するには、向きを変えてクエリを実行する必要があります。つまり、イベントモデルを一括挿入し、データベースにクエリを実行して、すべてをメモリに戻します。これでイベントIDができたので、クーポンを作成して一括挿入できます。 CouponEventsの泡を繰り返し洗い流します。

    イベントごとの1回のラウンドトリップと比較して、CouponとCouponEvent-おそらく数千行のファイルの場合は数千回のラウンドトリップ-モデルごとに2回のラウンドトリップしか実行していません-1つはイベントを挿入し、もう1つはIDを使用してイベントをフェッチします、同上クーポンとクーポンイベント-合計6往復。



    1. mysqlフェッチ合計php

    2. SQL Server 2016:関係を作成する

    3. PHPでの半正矢関数のSQL呼び出しの最適化

    4. 本当にSETXACT_ABORTONを使用する必要がありますか?