0

Google スプレッドシートから scriptDb に大量のデータを保存する必要があるプログラムがありますが、バッチ全体を保存せずにバッチ保存がハングし続けます。バッチ保存のためにオブジェクトを配列に追加する前に、オブジェクトが既にデータベースにあるかどうかを確認する方法を見つけようとしています。もちろん、チェックするオブジェクトごとにデータベースにクエリを実行すると、最大実行時間を超えます。

データベースに一度クエリを実行し、各オブジェクトをそのクエリに対してチェックして、それが以前に保存されていたかどうかを確認する効率的な方法はありますか? 次に、クエリで見つからなかったオブジェクトの配列を単純にプッシュできます。

4

1 に答える 1

2

これはばかげているように思えるかもしれませんが、上書きすると思われるデータを db から (または句の Where 部分なしで) いつでも取得し、配列に格納し、スプレッドシートからデータを取得して、配列を作成し、スプレッドシートの配列をすばやく反復処理します。データが dbarray に存在する場合は、スプレッドシート配列からスプライスします。完了したら、そのデータをデータベースにプッシュします。

このようにして、DB に 1 回だけクエリを実行し、上書きを軽減し、プッシュを最小限に抑えます。

KT

于 2013-03-11T15:15:47.633 に答える