簡介
但是,除非 MissingSchemaAction,否則這個隱式創建的架構中不包括主鍵信息。也可以使用FillSchema,讓 SqlDataAdapter創建 DataSet的架構,並在用數據填充它之前就將主鍵信息包括進去。
DataSet
作用:DataSet,DataAdapter讀取數據。
問:什麼是DataAdapter?
答:DataAdapter對象在DataSet與數據之間起橋樑作用
string strConn="uid=賬號;pwd=密碼;database=資料庫;server=伺服器";//SQL Server連結字元串
SqlConnection ConnSql=new SqlConnection (strConn); //Sql連結類的實例化
ConnSql.Open ();//打開資料庫//使用SqlDataAdapter時沒有必要從Connection.open()打開,SqlDataAdapter會自動打開關閉它。
string strSQL="SELECT * FROM 表名1 "; //要執行的SQL語句
SqlDataAdapter da=new SqlDataAdapter(strSQL,ConnSql); //創建DataAdapter數據適配器實例
DataSet ds=new DataSet();//創建DataSet實例
da.Fill(ds,"自定義虛擬表名");//使用DataAdapter的Fill方法(填充),調用SELECT命令
ConnSql.Close ();//關閉資料庫
提示
如果只需要執行SQL語句或SP,就沒必要用到DataAdapter ,直接用SqlCommand的Execute系列方法就可以了。sqlDataadapter的作用是實現Dataset和DB之間的橋樑:比如將對DataSet的修改更新到資料庫。
SqlDataAdapter的UpdateCommand的執行機制是:當調用SqlDataAdapter.Update()時,檢查DataSet中的所有行,然後對每一個修改過的Row執行SqlDataAdapter.UpdateCommand ,也就是說如果未修改DataSet中的數據,SqlDataAdapter.UpdateCommand不會執行。
結尾
有關更多信息,請參見 向 DataSet添加現有約束 。SqlDataAdapter與 SqlConnection 和 SqlCommand 一起使用,以便在連線到 SQL Server 資料庫時提高性能。 SqlDataAdapter 還包括 SelectCommand、InsertCommand、DeleteCommand、UpdateCommand和 TableMappings屬性,