.CSV
私は、これらの大きなファイルを区切り、SQLServerデータベースにアップロードするこのプログラムを数か月前に作成しました。.CSV
ファイルは基本的に毎回新しいデータが追加されているので、ユーザーがデータをアップロードするたびにテーブルからすべてを削除し、新しく追加されたデータを次のようにアップロードするように設定しました。
myConnection.Open();
string sql = @"DELETE FROM TestTable;";
SqlCommand cmd = new SqlCommand(sql, myConnection);
cmd.ExecuteNonQuery();
myConnection.Close();
ここで、テーブルへの以前のエントリを削除せずにデータをアップロードするように設定する必要がありますが、重複するデータを作成することはできません。幸い、.CSV
ファイルには主キーとして使用する各行の一意の識別子が付属していますが、これを行うためのアルゴリズムを思い付くのに問題があります。DELETE
SQL Serverで一意のデータのみを更新するために使用できる上記の構文に似たものはありますか?SQL Serverに関しては、私は最大の専門家ではないので、皆さんにお願いします。
私にはいくつかの異なるクラスとバックグラウンドワーカーがあるので、コードがたくさんあるのですべてを貼り付けたくありませんでしたが、詳細が必要な場合はお知らせください。
編集
ここに例があります:http: //msdn.microsoft.com/en-us/library/y06xa2h1 (v = vs.80).aspx?cs-save-lang = 1&cs-lang = csharp#code-snippet-1
私がしなければならないことはかなり確信していますが、私が混乱しているのは、dataSet1とは何か、そしてそれはどこから来ているのかということだけです。接続文字列を使用してSQLServerデータベースへの接続を開き、SqlDataAdapter
挿入などの機能を実行するために使用しています。
誰かがこれについて何か説明があれば、それは大きな助けになるでしょう。
ありがとう