![](/img/trans.png)
[英]How to loop data from a table in sql server and using the returned data to query another table. Please see
[英]How to store data in a SQL Server table when the data comes from a while loop function and shown in a list view?
我有這樣一個循環:
while (axCZKEM1.SSR_GetGeneralLogData(iMachineNumber, out sdwEnrollNumber, out idwVerifyMode,
out idwInOutMode, out idwYear,
out idwMonth, out idwDay, out idwHour,
out idwMinute, out idwSecond,
ref idwWorkcode)) // get records from the memory
{
iGLCount++;
lvLogs.Items.Add(iGLCount.ToString());
lvLogs.Items[iIndex].SubItems.Add(sdwEnrollNumber);//modify by Darcy on Nov.26 2009
lvLogs.Items[iIndex].SubItems.Add(idwVerifyMode.ToString());
lvLogs.Items[iIndex].SubItems.Add(idwInOutMode.ToString());
lvLogs.Items[iIndex].SubItems.Add(idwYear.ToString() + "-" + idwMonth.ToString() + "-" + idwDay.ToString() + " " + idwHour.ToString() + ":" + idwMinute.ToString() + ":" + idwSecond.ToString());
lvLogs.Items[iIndex].SubItems.Add(idwWorkcode.ToString());
iIndex++;
}
這將以七列的列表視圖格式顯示輸出。
我想將while循環返回的數據存儲在SQL Server表中。 我該怎么辦?
我在循環功能之外和內部嘗試了以下編碼
SqlDataAdapter _sqldataadapter = new SqlDataAdapter("insert into Record (sdwEnrollNumber,idwInOutMode,idwVerifyMode)values" +
// "('" + lvLogs.Items[iIndex].SubItems.Add(sdwEnrollNumber) + "','" + lvLogs.Items[iIndex].SubItems.Add(idwInOutMode.ToString()) + "','" + lvLogs.Items[iIndex].SubItems.Add(idwVerifyMode.ToString()) + "')", con);
//MessageBox.Show("Inserted successfully");
//con.Close();
但我沒有在表中獲取數據。
請幫我解決這個問題
我無法自己檢查函數,因為我沒有表定義,但是從我的角度來看:
您使用iIndex
作為索引號遍歷一個表。 然后將1加到iIndex
( iIndex++
)
因此,當然不能再通過索引訪問數據了。 因此,請將_sqldataadapter
放在iIndex++
之前。
應該看起來像這樣:
{
while (axCZKEM1.SSR_GetGeneralLogData(iMachineNumber, out
sdwEnrollNumber, out idwVerifyMode,
out idwInOutMode, out idwYear, out idwMonth, out
idwDay, out idwHour, out idwMinute, out idwSecond,
ref idwWorkcode))//get records from the memory
{
iGLCount++;
lvLogs.Items.Add(iGLCount.ToString());
lvLogs.Items[iIndex].SubItems.Add(sdwEnrollNumber);//modify by Darcy on Nov.26 2009
lvLogs.Items[iIndex].SubItems.Add(idwVerifyMode.ToString());
lvLogs.Items[iIndex].SubItems.Add(idwInOutMode.ToString());
lvLogs.Items[iIndex].SubItems.Add(idwYear.ToString() + "-" + idwMonth.ToString() + "-" + idwDay.ToString() + " " + idwHour.ToString() + ":" + idwMinute.ToString() + ":" + idwSecond.ToString());
lvLogs.Items[iIndex].SubItems.Add(idwWorkcode.ToString());
SqlDataAdapter _sqldataadapter = new SqlDataAdapter("insert into Record (sdwEnrollNumber,idwInOutMode,idwVerifyMode)values" +
// "('" + lvLogs.Items[iIndex].SubItems.Add(sdwEnrollNumber) + "','" + lvLogs.Items[iIndex].SubItems.Add(idwInOutMode.ToString()) + "','" + lvLogs.Items[iIndex].SubItems.Add(idwVerifyMode.ToString()) + "')", con);
//MessageBox.Show("Inserted sucessfully");
//con.Close();
iIndex++;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.