for (int j = 0; j < 4; ++j)//j代表齒數
{
for (int i = 0; i < 30; ++i)//行數,I改變的是測量的點數
{
jilushuzhi_left[j,i] = chixiangceliang_left[j, i];//將測量得到的j行i列值傳到變量數組
string str = string.Format("insert into rz(" + lieming[j,0] + ") values ('" + jilushuzhi_left[j, i] + "')");
OleDbCommand acommand1 = null;
acommand1 = tempconn.CreateCommand();
acommand1.CommandText = str;//新建一個command命令
tempconn.Open();
res = acommand1.ExecuteNonQuery();
tempconn.Close();
}
}
我是利用上面的循環語句來實現將一個數組傳遞到ACCESS數據庫中的一個表,但是當內循環完畢之後應該是第一列傳遞完,總共傳了30個數字(相當於30行),然後是第二列傳遞,但此時從31行開始往下傳遞了,它好像默認了表中第31行是第一行了。
你這個循環邏輯上有問題:所有的SQL語句都是使用的插入語句,因此會出現第一列循環完成之後,只會是行繼續增加(即31行)。因此,要實現你的要求,那麼在第一列循環完成之後,SQL語句應該修改為UPDATE語句來執行後面的循環。不知能否幫到你