999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于的ADO.NET數據庫訪問技術研究

2008-07-14 10:05:50
電腦知識與技術 2008年18期
關鍵詞:語言

劉 瑩

摘要:ADO.NET是微軟針對ADO的缺陷而重新設計的一種全新的數據庫訪問技術。闡述了ADO.NET的結構與數據模型:數據提供程序和數據集。探討了利用ADO.NET技術訪問數據庫訪問的方式,同時給出了采用C#語言所實現的ADO.NET數據庫訪問技術在數據庫中編程中的具體實現方案。

關鍵詞:C#語言;ADO.NET;數據庫訪問

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2008)18-2pppp-0c

Research on Database Accessing Technology Based on ADO.NET

LIU Ying

(South-central University For Nationalities College of Business,Wuhan 430000,China)

Abstract:This thesis introduces the data accessing technology based on ADO.NET,illuminates the structure ande the data model of ADO.NET:data provider and data set.It described the way of the database access in using ADO.NET technology.Then the solution with C# language has been presented to use the ADO.NET database accessing technology in database programming.

Key words:c# language;ADO.NET;Database Accessing

1 引言

ActiveX Data Objects.NET(簡稱ADO.NET)是Microsoft公司設計的一種新的數據訪問技術。在.NET中,數據存取的任務都是通過ADO.NET完成。同以往的數據庫訪問技術相比,ADO.NET有很多數據處理的優勢。ADO.NET是為關系數據訪問和非關系數據訪問設計的數據連接模型,它可以實現對數據源的非連接處理;另外ADO.NET新增了一些對象,如DataReader類可以產生一個只讀的記錄集,用來實現對快速讀取數據。

2 ADO.NET的數據模型

ADO.NET有兩個核心組件:數據提供程序和數據集。

數據提供程序(data provider)連接數據源,支持數據訪問和處理。數據集(data set)支持數據以關聯的方式,在斷開連接的情況下獨立地緩存數據,根據需要更新數據源。

2.1 數據提供程序

ADO.NET中的數據提供程序主要有兩種:SQL SERVER數據提供程序和OLE DB數據提供程序

每個數據提供程序都是System.Data命名空間中的一個接口實現方式,專門用于特定的數據源。如SQL SERVER數據提供方式屬于System.Data.SqlClient,支持SQL SERVER 7或更新版本。而OLE DB數據提供程序屬于System.Data.OleDb命名空間,支持對SQL SERVER舊版本和其他數據庫(Access、DB2、MySQL和Oracle)的訪問。

以SQL SERVER數據提供程序為例,其中包含了3個主要的組件。

2.1.1 數據提供程序的連接類

SQL SERVER數據提供程序的連接類是SqlConnection,實現了System.Data.IDbConnection接口,用于實現與數據源的連接。

要與一個SQL SERVER數據庫建立連接,首先引入命名空間:

using System.Data;

using System.Data.SqlClient;

然后創建連接字符串。連接字符串主要用于指定連接信息的參數,通常包括目標SQL SERVER實例名稱,指定身份驗證模式,數據庫名等。

string constring=@”server=(local)sqlexpress;

integrated security=sspi;

database=northwind;”

最后創建連接,也就是SqlConnnection對象,同時將連接字符串作為參數傳遞給它

SqlConnection con=new SqlConnection(constring);

打開連接:

con.Open();

2.1.2Command對象

連接了數據庫以后,可以通過Command對象執行sql命令或是存儲過程來完成對數據庫的一些操作。

首先創建命令字符串:

string sql=@”select count(*)from employees”;

然后創建Command對象:

SqlCommand cmd=new SqlCommand(sql,con);

其中sql作為參數將傳遞給cmd.CommandText屬性,這個屬性用來保存要執行的sql語句;con作為參數傳遞給cmd.Connection屬性,其作用是將命令與數據庫的連接關聯起來。

最后執行命令:執行命令的方法有四種。方法的區別取決于sql代碼的結果。執行命令的方法如下表所示:

表1 執行命令的方法

以剛建立的cmd命令為例:

cmd.ExecuteScalar();

2.1.3 數據讀取器

數據讀取器是實現了System.Data.IDataReader接口的對象。數據讀取器用來讀取查詢的結果集。它是快速的、未緩存的、只向前移動的、只讀的、已連接數據源的、逐行檢索數據的數據流。數據讀取器適用于只想讀取和顯示數據的時候。

首先實例化數據讀取器:

SqlDataReader rd=cmd.ExecuteReader();

這里需要注意的是,由于SqlDataReader是抽象類,不能顯示的實例化,必須執行SqlCommand的ExecuteReader()方法來獲得SqlDataReader的實例。

接著,調用SqlDataReader的Read()方法來遍歷返回結果集的每一行。在Read()方法中,如果存在下一行就返回true,并向前移動游標;如果沒有下一行,就返回false。由于Read把游標移動到下一個記錄,所以每次都必須手工調用這個方法。一般使用while循環來完成操作:

while(rd.Read())

然后訪問數據:

在調用了Read()方法后,下一行就以集合的形式返回,存儲在SqlDataReader對象中。如果要訪問某一列的數據,可以使用許多方法。如果使用序數索引器方法(就像提供整數數組的索引一樣),就給數據讀取器提供列號以檢索值:

Console.WriteLine(“{0}{1}”,rd[0],rd[1]);

也可以使用列名索引器,把列名傳遞給數據讀取器:

Console.WriteLine(“{0}{1}”,rd[“EmployeeId”],rd[“LastName”])

使用列名索引器有很多優點。當表因為某個原因添加或刪除一個或多個列時,擾亂了列的順序,在使用序數索引器查找方法的代碼中則會產生異常。而使用列名索引器可以解決這個問題。但為了快速得到結果,還是應該使用序數所引器的方法。

2.2 數據集

ADO.NET中的數據集是多層數據庫應用程序開發的一大進步。數據集允許在本地高速緩存中存儲和修改大量數據,把數據看成表,斷開與數據庫的連接,以脫機方式處理數據。

2.2.1 數據適配器

數據適配器對象在數據集和源數據之間起到橋梁作用。數據適配器對象使用Fill()方法將數據填充到DataSet的DataTable中去,并提供將異動的數據更新到數據源的能力。

數據集、數據適配器和數據源之間的關系如圖1。

圖1 數據集、數據適配器和數據源之間的關系

創建數據適配器:

SqlDataAdapter da=new SqlDataAdapter(cmd);

2.2.2 數據集

數據集對象是ADO.NET對象模型中最核心的對象。一個數據集對象就是一個記錄集的集合,它相當于數據緩沖區。ADO.NET框架提供了記錄集的所有數據庫功能。

首先構造數據集:

DataSet ds=new DataSet();

然后調用SqlDataAdapter的Fill方法填充數據集

da.Fill(ds,”employees”);

經過以上填充,就把查詢的結果填入數據集中,可以實現脫機處理數據。

3 小結

ADO.NET是開發數據庫系統的重要技術。ADO.NET最突出的特性是可以采用非連接的方式的訪問和處理數據。與ADO相比,ADO.NET只在必要的時候對數據庫進行連接,當處理完畢后它將及時關閉連接,保證了虎踞堀服務器資源的可用性,使它可以為更多的用戶服務,更加適合網絡應用。

參考文獻:

[1]James Huddleston.C#數據庫入門經典[M].2版.北京:清華大學出版社,2006.

[2]萬科,覃劍.Visual c#.NET程序設計基礎與上機指導[M].北京:清華大學出版社,2007.

[3]王煒奇.基于ADO.NET的數據訪問技術分析與應用[J].蘭州工業高等專科學校學報,2007,14(2):37-40.

[4]張娜,張劍萍,朱玉文,等.ADO.NET數據訪問技術的應用研究[J].北京農學院學報,2007,22(增刊2):188-190.

收稿日期:2008-04-03

作者簡介:劉瑩(1981-),女,湖北武漢人,助教,碩士,研究方向為數據庫系統理論與應用。

猜你喜歡
語言
詩之新,以語言創造為基
中華詩詞(2023年8期)2023-02-06 08:51:28
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
讓語言描寫搖曳多姿
多向度交往對語言磨蝕的補正之道
累積動態分析下的同聲傳譯語言壓縮
日常語言與播音語言
新聞傳播(2016年10期)2016-09-26 12:15:04
語言技能退化與語言瀕危
我有我語言
論語言的“得體”
語文知識(2014年10期)2014-02-28 22:00:56
Only Words慎用你的語言
主站蜘蛛池模板: 亚洲h视频在线| av在线无码浏览| 国产手机在线小视频免费观看| 3p叠罗汉国产精品久久| 在线观看无码a∨| 青青草原偷拍视频| 2020久久国产综合精品swag| 色婷婷国产精品视频| 色婷婷在线播放| 日本人妻丰满熟妇区| 国产第八页| 亚洲首页在线观看| 久久久久久午夜精品| 日韩小视频在线观看| 呦视频在线一区二区三区| 热热久久狠狠偷偷色男同| 一级高清毛片免费a级高清毛片| 国产人碰人摸人爱免费视频| 农村乱人伦一区二区| 成人午夜视频在线| 一级片一区| 极品国产一区二区三区| AV在线天堂进入| 好久久免费视频高清| 亚洲va欧美va国产综合下载| 国产高清无码麻豆精品| 97无码免费人妻超级碰碰碰| 黄片在线永久| 欧美在线综合视频| 日韩久草视频| 日韩精品毛片人妻AV不卡| 精品视频一区二区观看| 久久无码高潮喷水| 精品国产一二三区| 色婷婷在线影院| 国产在线高清一级毛片| 亚洲日韩第九十九页| 日韩欧美中文字幕在线韩免费| 国产精品三级专区| 毛片视频网| 国产精品亚洲综合久久小说| 666精品国产精品亚洲| 国产无码网站在线观看| 国产产在线精品亚洲aavv| 亚洲成年人网| 国产91精品调教在线播放| 青青草国产免费国产| 高清色本在线www| 在线视频亚洲欧美| 国产青榴视频在线观看网站| 女人18毛片久久| 丁香综合在线| 国产精品私拍在线爆乳| 69综合网| 无码一区二区三区视频在线播放| 99er这里只有精品| 欧美翘臀一区二区三区| 亚洲高清中文字幕在线看不卡| 国产精品手机在线观看你懂的| 亚洲第一视频免费在线| 91久久精品国产| 久久久久亚洲精品成人网| 视频一本大道香蕉久在线播放 | 精品人妻一区二区三区蜜桃AⅤ| 免费一级全黄少妇性色生活片| 国产成人a在线观看视频| 日本高清在线看免费观看| 野花国产精品入口| 2020亚洲精品无码| 国产精品尤物在线| 91口爆吞精国产对白第三集| 91小视频在线观看免费版高清| 91精品人妻互换| 国产精品亚洲一区二区三区在线观看| 久久96热在精品国产高清| 亚洲综合激情另类专区| 国产成本人片免费a∨短片| 美女国产在线| 国产喷水视频| 无码一区二区三区视频在线播放| 欧美在线天堂| 在线观看国产精品第一区免费|