Q
數據集問題
0
A
回答
10
不能更新沒有
UPDATE
查詢數據庫。這就是更新發生的方式。您可以使用抽象化的庫,以便您不必在代碼中查看查詢,但查詢仍然必須發生。通過將數據集添加到監視列表並單擊小放大鏡圖標,您可以在調試模式下查看數據集的內容。它打開一個窗口,讓你查看數據集中的表格。
2
您可以使用LINQ將數據更新到數據庫中,而無需使用T-SQL Update查詢。
1
你在找什麼是DataAdapter。它將管理更新,刪除和插入更改。
0
檢查這個代碼,並根據需要進行修改
///<summary>Update Batch records in DataTable</summary>
///<remarks></remarks>
public void UpdateTables(System.Data.DataTable DataTable)
{
if (DataTable.TableName.Length == 0)
{
throw new Exception("The DataTable tablename is nedded.");
}
if (this.State == ConnectionState.Closed)
{
this.Connect();
}
try
{
string strTablename = DataTable.TableName, strSQL;
System.Data.IDbDataAdapter dt = null;
if (DataTable.TableName.Length == 0)
{
throw new Exception("Tablename can't be null.");
}
strSQL = "SELECT * FROM " + strTablename;
if (m_DatabaseType == DatabaseTypeEnum.Access)
{
dt = new System.Data.OleDb.OleDbDataAdapter(strSQL, m_ConnectionString);
System.Data.OleDb.OleDbCommandBuilder cb_a
= new System.Data.OleDb.OleDbCommandBuilder((System.Data.OleDb.OleDbDataAdapter)dt);
dt.InsertCommand = cb_a.GetInsertCommand();
dt.UpdateCommand = cb_a.GetUpdateCommand();
dt.DeleteCommand = cb_a.GetDeleteCommand();
((System.Data.OleDb.OleDbDataAdapter)dt).Update(DataTable);
}
else if (m_DatabaseType == DatabaseTypeEnum.SQLServer)
{
dt = new System.Data.SqlClient.SqlDataAdapter(strSQL, m_ConnectionString);
System.Data.SqlClient.SqlCommandBuilder cb_s
= new System.Data.SqlClient.SqlCommandBuilder((System.Data.SqlClient.SqlDataAdapter)dt);
dt.InsertCommand = cb_s.GetInsertCommand();
dt.UpdateCommand = cb_s.GetUpdateCommand();
dt.DeleteCommand = cb_s.GetDeleteCommand();
((System.Data.SqlClient.SqlDataAdapter)dt).Update(DataTable);
}
else if (m_DatabaseType == DatabaseTypeEnum.Oracle)
{
dt = new System.Data.OracleClient.OracleDataAdapter(strSQL, m_ConnectionString);
System.Data.OracleClient.OracleCommandBuilder cb_o
= new System.Data.OracleClient.OracleCommandBuilder((System.Data.OracleClient.OracleDataAdapter)dt);
dt.InsertCommand = cb_o.GetInsertCommand();
dt.UpdateCommand = cb_o.GetUpdateCommand();
dt.DeleteCommand = cb_o.GetDeleteCommand();
((System.Data.OracleClient.OracleDataAdapter)dt).Update(DataTable);
}
else if (m_DatabaseType == DatabaseTypeEnum.Odbc)
{
dt = new System.Data.Odbc.OdbcDataAdapter(strSQL, m_ConnectionString);
System.Data.Odbc.OdbcCommandBuilder cb_c
= new System.Data.Odbc.OdbcCommandBuilder((System.Data.Odbc.OdbcDataAdapter)dt);
dt.InsertCommand = cb_c.GetInsertCommand();
dt.UpdateCommand = cb_c.GetUpdateCommand();
dt.DeleteCommand = cb_c.GetDeleteCommand();
((System.Data.Odbc.OdbcDataAdapter)dt).Update(DataTable);
}
else
{
throw new NotImplementedException();
}
DataTable.AcceptChanges();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
相關問題
- 1. 填充數據集問題
- 2. 數據集XML問題
- 3. 數據集更新問題
- 4. 數據集綁定問題
- 5. 數據集類型問題
- 6. VB數據集問題
- 7. 問題從數據集
- 8. 問題XML和數據集
- 9. 寫入數據集問題
- 10. C++/cli訪問數據集問題
- 11. SmartGWT ListGrid大數據集問題
- 12. SSAS多維數據集更新問題
- 13. Scipy.Spatial.KDTree.query - 大型數據集問題
- 14. Matlab:有關數據集的問題()
- 15. 數據集文件的位置問題
- 16. 與數據集顯示問題
- 17. ASP:數據庫集成問題
- 18. 數據集多次使用問題
- 19. linq as列名數據集問題
- 20. jFreeChart刷新數據集問題
- 21. 問題的數據集爲sql
- 22. 問題渲染收集數據
- 23. 核心數據NSMutable集問題
- 24. 數據集輸出至Excel問題
- 25. MYSQL數據庫字符集問題
- 26. SSRS多個數據集問題
- 27. TimeZone轉換問題.Net數據集WebService
- 28. JOGL多維數據集問題入門
- 29. 數據集設計器性能問題
- 30. ssrs中有兩個數據集問題?
就像我說的,這仍然會導致更新查詢,但它可能是什麼意思金獎。 +1 – Welbog 2009-06-11 16:37:49
我相信你不必爲此編寫你的存儲過程和t-sql查詢。您可以使用ORM來實現這一點。 – Bhaskar 2009-06-11 20:44:39