0

私はこのデータテーブル、実際には datatable のリストを持ってい List<DataTable> lstDataSourceます。リスト内の各テーブルには、正確に 6 行 (月曜日から土曜日まで!) があることがわかっていますが、任意の数の列 (つまり、6 から 14) が存在する可能性があります。従業員が 1 日あたりに働いている時間数!) したがって、各データ テーブルの行と列の両方の制限を知っています。私のポイントは、このデータテーブルのリストを使用して、 read database table でこれらすべての値を更新 (むしろ挿入) する方法ですEmpWorkSchedule。私が知っているのは、挿入された行の合計がlstDataSource.Count * 6正しいということですか? また、値を持たない列 (一部の従業員は 6 時間勤務、一部は 7 時間勤務など) の場合、その行の他の列は単に null に設定されます。(データベースでは nullable として定義されています)。私は自分自身を明確にしたことを願っています。それで、どうすればこれを行うことができますか?
また、ご不明な点がございましたら、お気軽にお尋ねください。

EDIT:私はこのリストを持っていますDataTable List<DataTable> lstDataTable、私が望むのは、リスト内のこれらの各テーブルからすべての行を、という名前のデータベーステーブルに挿入することです。各行のEmpWorkScheduleすべての値は連続しています。つまり、最初の列はデータベースの列1に対応しますテーブルなど、いいですか?しかし、現在、すべての行にはすべての列の値があり、一部は6、一部は7、一部は8です。私が欲しいのは、データ行に値がない列はデータベーステーブルでnullのままにする必要があるということです。残りのすべての値を挿入する必要があります。

また、選択で使用されているため、適応されたものを使用する可能性は低いようです。私は何も選択していません。何かを挿入しています。

4

1 に答える 1

0

たぶん、DataTableをループして、各行のレコードをDBに保存する必要があります。

DataTable

Col1 |  Col2
abc  |  456 
def  |  789

コードビハインドで次のようなことを行います。

foreach(DataRow row in YourDataTable.Rows)
{

  string myColumn1  = row["Col1"].ToString();  
  int mycolumn2 =  Convert.ToInt32(row["Col2"]);

  //Your Insert Statement
  //First Loop you will get  
  //myColumn1 = abc and myColumn2=456
  //2nd loop will be def and 789

}

よろしく

于 2012-06-21T23:06:10.647 に答える