Webページから抽出した製品のURLのリストがあります..そして、タイトルを含む別のリストがあります
リストをループして、すべてのタイトルとリンクをSQLサーバーデータベーステーブルに挿入したい..
基本的にループで複数のインサートを作りたい
リストと挿入 (タイトル、URL) の両方をループしたい
最良の方法とその方法は何ですか?? 例を挙げてください..誰か助けてくれませんか?
単一の行を挿入する方法は知っていますが、リストから複数の行を挿入する方法がわかりません
最も簡単な方法は、一度に 1 つの値をループに挿入することです。
using(SqlConnection conn = new SqlConnection(connString))
{
for(int i=0; i < urlList.Length; i++)
{
string url = urlList[i];
string title = titleList[i];
SqlCommand cmd = new SQlCommand({insert sql here});
cmd.ExecuteNonQuery();
}
}
一括インポートなどの「エレガントな」ことをたくさん行うことができますが、パフォーマンスが重大な問題であり、SQL がパフォーマンスの問題の最大の原因でない限り、おそらく単純な方が良いでしょう。
MS SQL には便利なインポート/エクスポート ウィザードがあります。
INSERT ステートメントのリストを生成する場合 (つまり、URL のリストがそれほど大きくない場合)、EXCEL を使用することをお勧めします。値のリストを貼り付けて挿入し、最初の行の右側に次のような数式を作成します。
="INSERT INTO table VALUES ('"&A1&"','"&B1&"')"
次に、数式をコピーして、すべての INSERT ステートメントを生成します。
次のようなステートメントを作成してはどうでしょうか。
insert into myurls (url) values
(url1),
(url2),
(url3)...,
(urln);
(SQLバージョンがこれをサポートしていると仮定します)。