国产探花免费观看_亚洲丰满少妇自慰呻吟_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:向數據庫提交一個修改的行之前被觸發。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东乡| 石河子市| 蒲江县| 江口县| 揭西县| 周口市| 东城区| 镇原县| 宜黄县| 绥德县| 建湖县| 新安县| 习水县| 巫溪县| 抚松县| 龙口市| 潢川县| 砚山县| 尉氏县| 金山区| 白朗县| 晴隆县| 崇阳县| 聂拉木县| 浙江省| 西城区| 平陆县| 化州市| 仁怀市| 南溪县| 汉阴县| 长子县| 恩施市| 永清县| 贞丰县| 浑源县| 济宁市| 景泰县| 安溪县| 永州市| 昌都县|