2009-06-05 45 views
1

我只是使用select查詢並填充數據集。並做了一些調整,我想刪除數據集中此條我這樣做刪除SQLDataadapter

foreach (DataRow dr in dsDatadata.Tables[0].Rows) 
           { 
            dr.Delete(); 
           } 



           sdAdapter.Update(dsDatadata,"DataData"); 

但它無法正常工作。

注意: - 我不想使用SQL刪除命令

如何解決這個問題?

+0

你應該給更多的細節......它是如何工作的?你有例外嗎? – 2009-06-05 09:32:08

回答

1

這是因爲sdAdapter對於SQL刪除命令沒有Command
您可以使用CommandBuilder自動生成適配器的INSERT,UPDATE和DELETE命令,但它僅適用於簡單查詢(適用於單表,不適用於連接)。

foreach (DataRow dr in dsDatadata.Tables[0].Rows) { 
    dr.Delete(); 
} 
DataAdapter sdAdapter; 

DbCommandBuilder cb = new SqlCommandBuilder(sdAdapter); 
sdAdapter.Update(dsDatadata, "DataData"); 

注:我使用的SQLCommandBuilder,但你應該使用一個(OLEDB ...)
MSDN Documentation更多細節取代它......

如果您的查詢更復雜,那麼就沒有簡單的路徑,你必須自己編寫SQL。