OLEDBConnection を使用して、約 100 万件のレコードを MS Access DB に挿入する C++ プログラムがあります。そのINSERT INTO
ために、レコードを挿入するためにクエリを何百万回も実行しましたが、これにはかなりの時間がかかりました。
データはプログラムで配列の形式で生成されますが、パフォーマンスを向上させるために 1 つのステップでデータをデータベースにロードできる他の方法はありますか?
ありがとう!
現在レコードを挿入するために使用するループ
for (int i = 0; i < populationSize; i++){
insertSQL = "INSERT INTO [" + pTableName + "] (" + columnsName + ") VALUES (" + columnsValue[i] + ");";`
outputDBConn->runSQLEdit(insertSQL);
}
SQL クエリを実行するメソッド
void DBConnector::runSQLEdit(String^ query){
SQLCMD = gcnew OleDbCommand( query, dbConnection );
SQLCMD->CommandTimeout = 30;
dbConnection->Open();
SQLCMD->ExecuteNonQuery();
dbConnection->Close();
}