0

Windows モバイル アプリケーションでは、配列リストの形式でデータを返す大量のデータを取得するために Web サービスを呼び出しています。その後、デバイス内の SQL Server CE データベースにデータを挿入しています。現在、多くのテーブルと各テーブルの大量のデータがあるため、時間がかかりすぎています。Array list を使用して SQL Server CE データベースにデータを挿入するより高速な方法を提案してください。

ce_command.Connection = Database.GetDbConnection();
ce_command.CommandType = CommandType.TableDirect;
ce_command.CommandText = "NHH_SOURCE";
System.Data.SqlServerCe.SqlCeResultSet rsSource;
SqlCeUpdatableRecord recSource;
rsSource = ce_command.ExecuteResultSet(System.Data.SqlServerCe.ResultSetOptions.Updatable);
recSource = rsSource.CreateRecord();
NPFWebService.WebServiceGetNHH_Source[] get_source = null;
get_source = npf_WS.GetSourceData();

if (get_source.Length > 0)
{
    for (int i = 0; i < get_source.Length; i++)
    {
        recSource.SetValue(0, get_source[i].sourceID);
        recSource.SetValue(1, get_source[i].sourceName.Replace("'", "''"));
        recSource.SetValue(2, get_source[i].organizationID);
        recSource.SetValue(3,get_source[i].transferF);
        recS‌​ource.SetValue(4, get_source[i].transferDate);
        rsSource.Insert(recSource);
4

1 に答える 1

0

あなたはすでに最速のアプローチを使用しているようです。テーブルにインデックスがありますか - 挿入が完了した後に削除して再作成することで、時間を節約できる場合があります

于 2012-06-26T17:02:50.237 に答える