###前提・実現したいこと
SQLで実行していたinsert文をdataTableを使って同じ内容のデータを作りたい。
INSERT INTO [table1] ([ID], [colmun1], [colmun2], [colmun3], [colmun4], [colmun5], [colmun6], [colmun7], [colmun8]) VALUES (0,0,0,0,0,0,0,0,0), (1,1,0,0,0,0,0,0,0), (2,0,2,0,0,0,0,0,0), (3,1,2,0,0,0,0,0,0), (4,0,0,3,0,0,0,0,0), (5,1,0,3,0,0,0,0,0), (6,0,2,3,0,0,0,0,0), (7,1,2,3,0,0,0,0,0), (8,0,0,0,4,0,0,0,0), (9,1,0,0,4,0,0,0,0), (10,0,2,0,4,0,0,0,0), (11,1,2,0,4,0,0,0,0), (12,0,0,3,4,0,0,0,0), . . . (251,1,2,0,4,5,6,7,8), (252,0,0,3,4,5,6,7,8), (253,1,0,3,4,5,6,7,8), (254,0,2,3,4,5,6,7,8), (255,1,2,3,4,5,6,7,8);
上記のinsert文をC#で配列等を使ってdatatableに追加していきたいと考えています。
###該当のソースコード
DataSet dataset = new DataSet(); DataTable dt = new DataTable("Table1"); dt.Columns.Add("ID"); dt.Columns.Add("colmun1"); dt.Columns.Add("colmun2"); dt.Columns.Add("colmun3"); dt.Columns.Add("colmun4"); dt.Columns.Add("colmun5"); dt.Columns.Add("colmun6"); dt.Columns.Add("colmun7"); dt.Columns.Add("colmun8"); int[] Array = new int[] { 1, 2, 3, 4, 5, 6, 7, 8 }; //8bit分回す(255回) for (int i = 0; i < 0xFF; i++) { var dRow = dt.NewRow(); dRow[0] = Array[i]; for (int j = 0; j < 8; j++) { //ここからの処理が不明… if ((i >= j) & 1 == 1) { //二進数で表示した時に0の時は0を代入。 //0でなければArrayの数字を各dRowに入れたいのですがその処理の仕方が不明 //以下、暫定処理 dRow[1] = Array[j]; dRow[2] = Array[j]; dRow[3] = Array[j]; dRow[4] = Array[j]; dRow[5] = Array[j]; dRow[6] = Array[j]; dRow[7] = Array[j]; dRow[8] = Array[j]; dRow[9] = Array[j]; } } TBuiTable.Rows.Add(dRow); }
駄文で申し訳ございませんが、ご教授の程よろしくお願いします。
二進数で表示した時に0の時は0を代入。
0でなければArrayの数字を各dRowに入れたいのですがその処理の仕方が不明
###補足情報(言語/FW/ツール等のバージョンなど)
C#
.net frameWork 3.5
回答3件
あなたの回答
tips
プレビュー