mysqlに挿入するクエリを作成する関数を作成しました。アップロードはすばらしく高速ですが、長い値を挿入すると建物の所要時間はいくらか長くなります。このような機能をスピードアップする方法はありますか?なぜなら、ループ内のループは、より多くのデータ量を得るために多くの時間がかかることを知っているからです。Cでのqueryupbuilder(stringconcat)のスピードアップ
foreach (string[] st in dataToUpload)
{
buildQuery += " ('";
for (int i = 0; i < st.Length; i++)
{
buildQuery += st[i];
if (i < st.Length - 1)
buildQuery += "','";
}
buildQuery += "')";
if (st != dataToUpload[dataToUpload.Count - 1])
buildQuery += ",";
}
これは、たとえばビルドしたいクエリです。
string test = INSERT INTO test (test, test1, test2, test3) values
test = test + " " + buildquery;
のでテストは、私がINNODBとMYISAMで作業することができ、それが32ギガバイトのRAMを搭載した6700KプロセッサーとCentOSのサーバーに取り組んでいます
INSERT INTO test (test, test1, test2, test3)
values ("testvalue1", "testvalue2" , "testvalue3" , "testvalue4"),
("testvalue1", "testvalue2" , "testvalue3" , "testvalue4"),
になります。
したがって、主な質問は次のとおりです。クエリの構築をより迅速にするにはどうすればよいですか。
あなたのPCのハードウェアとクエリの構造によって異なります。ここで詳細を表示 –
@reds私はそれを追加しました。あなたは今それを使って何かをすることができます。 –
アプリをプロファイリングしたとき、どの領域が最も遅いのですか?文字列作成ツールを試しましたか? – BugFinder