国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ADO.NET讀書筆記系列之------SqlDataAdapter對象

2024-07-21 02:06:30
字體:
來源:轉載
供稿:網友

一、特點介紹

1、表示用于填充 dataset 和更新 sql server 數據庫的一組數據命令和一個數據庫連接。

2、在sqldataadapter和dataset之間沒有直接連接。當完成sqldataadpater.fill(dataset)調用后,兩個對象之間就沒有連接了。

二、使用介紹

1、創建sqldataadapter

    ...

    string strsql=“select * from customers”;

    sqlcommand cmd=new sqlcommand(strsql,cn);

    sqldataadapter da=new sqldataadapter();

    da.selectcommand=cmd;

2、sqldataadapter構造函數

①string strconn=“provider=.....”;

  string strsql=“select * from customers”;

  sqldataadapter da=new sqldataadapter(strsql,strconn);

②string strconn=“provider=.....”;

  sqlconnection cn=new sqlconnection(strconn);

  sqldataadapter da=new sqldataadapter(“select * from customers”,cn);

③string strconn=“provider=.....”;

  string strsql=“select * from customers”;

  sqlconnection cn=new sqlconnection(strconn);

  sqlcommand cmd=new sqlcommand(strsql,cn);

  sqldataadapter da=new sqldataadapter(cmd);

3、從查詢中獲取結果

①使用fill方法

    ...

    sqldataadapter da=new sqldataadapter(strsql,strconn);

    dataset ds=new dataset();

    da.fill(ds);   //這里ds中的表名為table

②使用fill方法創建datatable對象和datacolumn對象

    ...   

    sqldataadapter da=new sqldataadapter(strsql,strconn);

    da.tablemapping.add(“table”,“customers”);   

    dataset ds=new dataset();

    da.fill(ds);

③使用重載fill方法

    sqldataadapter.fill(dataset,“customers”);

    sqldataadapter.fill(datatable);

    sqldataadapter.fill(dataset,intstartrecord,intnumrecords,“tablename”);

④開放和關閉連接

    如果調用了一個sqldataadapter對象的fill方法,而selectcommand屬性的connection關閉了,那么sqldataadapter就會開放一個連接,然后提交查詢、獲取結果、最后關閉連接。如果在調用前開放了connection,那么操作之后仍然保持開放。

    ...

    sqldataadapter dacustomers,daorders;

    dacustomers=new sqldataadapter(“select * from customers”,cn);

    daorders=new sqldataadapter(“select * from orders”,cn);

    dataset ds=new dataset();

    cn.open();

    dacustomers.fill(ds);

    daorders.fill(ds);

    cn.close();

⑤多次調用fill方法

    刷新dataset中的數據,最簡單的解決方法就是清空dataset(或datatable),然后再次調用dataadapter對象的fill方法。   

三、屬性方法事件介紹

1、屬性

①acceptchangeduringfill:確定由dataadapter所獲取的行的rowstate(默認為true)。

②deletecommand:獲取或設置一個 transact-sql 語句或存儲過程,以從數據集刪除記錄。

③insertcommand:獲取或設置一個 transact-sql 語句或存儲過程,以在數據源中插入新記錄。

④selectcommand:獲取或設置一個 transact-sql 語句或存儲過程,用于在數據源中選擇記錄。

⑤updatecommand:獲取或設置一個 transact-sql 語句或存儲過程,用于更新數據源中的記錄。

⑥tablemappings:sqldataadapter用來將查詢的結果映射到dataset的信息集合。

⑦continueupdate:控制sqldataadapter在遇到一個錯誤之后是否繼續提交更改(默認為false)。

2、方法

①fill:執行存儲于selectcommand中的查詢,并將結果存儲在datatable中。

②fillschema:為存儲在selectcommand中存儲的查詢獲取架構信息。獲取查詢中的各列名稱和數據類型。

③getfillparameters:為selectcommand獲取一個包含著參數的數組。

④update:向數據庫提交存儲在dataset(或datatable、datarows)中的更改。該方法會返回一個整數值,其中包含著在數據存儲中成功更新的行數。

3、事件

①fillerror:當dataadapter遇到填充dataset或datatable的一個錯誤時,該事件被觸發。

②rowupdated:向數據庫提交一個修改的行之后被觸發。

③rowupdating:向數據庫提交一個修改的行之前被觸發。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 津市市| 灵台县| 休宁县| 凤冈县| 宁强县| 柘荣县| 铁力市| 鞍山市| 拉萨市| 衡山县| 吴堡县| 巧家县| 濉溪县| 庆元县| 分宜县| 黔西县| 澄城县| 遂川县| 屏东市| 三台县| 将乐县| 休宁县| 崇州市| 吉林省| 呈贡县| 彰武县| 东源县| 长治市| 金堂县| 郯城县| 灌云县| 长垣县| 信宜市| 阳春市| 奉新县| 本溪| 申扎县| 盐城市| 新田县| 城市| 富锦市|