我有一個應用程序,我一直在努力,直到現在我一直使用Access作爲數據庫。我將它切換到SQL,我有點新鮮。SQLDataAdapter正在更新,但它附加到數據庫並沒有更新
我的代碼如下
public bool Update_DB_FromTable(DataTable DTable)
{
try
{
SqlConnection myConnection = new SqlConnection("Data Source=" + hostname + " ;User ID=SALX; Password=password;" +
"database=" + dbname + "; " +
"connection timeout=30");
myConnection.Open();
SqlCommand myCommand = new SqlCommand("SELECT * FROM dbo." + tablename, myConnection);
SqlDataAdapter da = new SqlDataAdapter(myCommand);
SqlCommandBuilder b = new SqlCommandBuilder(da);
int count = da.Update(DTable);
myConnection.Close();
return true;
}
catch
{
return false;
}
}
這工作,但每次運行它只是將數據追加到數據庫的結尾,並沒有「更新」數據庫就像訪問。最糟糕的部分是因爲它創造了許多重複的條目,我不能手動刪除它們從數據庫中..
任何幫助將不勝感激。
乾杯,
-Sean-
這可能是一個真正的菜鳥問題,但我難倒..
您可以將最初輸入數據的代碼發佈到DataTable中嗎?謝謝。 – ristonj 2012-03-30 15:21:40
起初我從OleDbDataAdapter.Fill(MS Access的表格)填充數據表,當我更新sqlDataAdapter與該表沒有任何事情發生。所以我從該DataTable中實際構建了一個新的DataTable並進行了更新。這給我帶來了它被插入的問題,每次運行它只是將所有記錄追加到底部 – 2012-03-30 16:23:48