DataTable
は.xlsテーブルから生成されています。他のソース(データテーブル)のデータでSQL Serverテーブルを更新する方法
このDataTable
をSQL Serverデータベースの既存のテーブルに保存します。
私はユニークなPKを持つ行を格納するためにSqlBulkCopy
を使用します。
問題は、私はまた、SQL Serverテーブルとして同じPKを持っていますが、SQL Serverのテーブルに比べて異なる値で細胞を含む他の行を持っている、です。要するに
:
はのは、私はこのような行を持って私のDataTable
に言ってみましょう:
ID(PK)|名前|番号
005 | abc | 123
006 | lge | 122
私のSQLサーバーでは、このようなsthがあります。
id(PK)|名前|番号
004 | cbs | 345
005 | lks | 122
はすぐにSqlBulkCopy
を使用してSQL Serverにアップロードできます。一方、行は、SQLサーバーテーブルに同じPKの行が含まれているため、挿入することはできません。
今、手動で行を抽出しようとしました。各単一セルをArrayListに抽出し、その後にUPDATE Tableステートメントを生成します。しかし、私は非常に多くの行を処理するので、このメソッドは実行できないようです。
私はこの目標を達成するためのより良い方法を探しています。
何か助けていただければ幸いです。 (あなたはを更新する必要がありますストアドプロシージャ
DataTable dt = new DataTable();
StringBuilder sb = new StringBuilder();
sb.Append("<R>");
for (int i = 0; i < dt.Rows.Count; i++)
{
sb.Append("<C><ID>" + dt.Rows[0].ToString() + "</ID>");
sb.Append("<N>" + dt.Rows[1].ToString() + "</N>");
sb.Append("<I>" + dt.Rows[2].ToString() + "</I></C>");
}
sb.Append("</R>");
///pass XML string to DB side
///
//sb.ToString(); //here u get all data from data table as xml format
データベース側:データテーブルからデータを読み込み、XMLデータを作成する
C#側のコード:
感謝の
誰かがテーブルのフォーマットを助けることができますか?私はそれがあまりにも混乱しないように見えることを望む。 – rofans91
あなたは成功した実装をしたいと言っていますが、 "005"のidのために何をしたいのかは説明していません。データベーステーブルのデータを上書きしますか?それとも、 'DataTable'から無視しますか? –
私はそれを上書きしたい。 – rofans91