王海燕+張景義
摘要:使用ADO.NET可以很容易的操作各類數(shù)據(jù)庫,它為開發(fā)人員節(jié)約了寶貴的時間,該文通過分析ADO.NET與各種常用數(shù)據(jù)庫的連接方法,使編程人員能夠快速熟練掌握利用ADO.NET來進(jìn)行數(shù)據(jù)庫的開發(fā)。開發(fā)人員只需要將常用連接字符串復(fù)制到自己的程序中即可連接上數(shù)據(jù)庫進(jìn)行操作。
關(guān)鍵詞:ADO.NET;數(shù)據(jù)庫;編程
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)08-0010-01
ADO是ActiveX Data Objects的縮寫,它是一個組件庫,包含了一系列的函數(shù),可以使用微軟編程技術(shù)來訪問數(shù)據(jù)庫的數(shù)據(jù)。由于微軟公司一直在推廣Microsoft.NET技術(shù),所以就有了ADO.NET技術(shù),它能夠在微軟的NET編程環(huán)境中更好的使用數(shù)據(jù)訪問接口,下面我們就來介紹常用的數(shù)據(jù)庫訪問所需使用的連接字符串,在下面所有介紹的連接字符串中所用到的數(shù)據(jù)庫參數(shù)作在此做統(tǒng)一說明,Server服務(wù)器名稱MyServer,Data Source數(shù)據(jù)源使用MyBookDb,User Id用戶Id使用MyId,Password使用MyPasswd,為了訪問數(shù)據(jù)庫的安全,下面所有的連接都使用密碼驗證來訪問。
1 常用的幾種數(shù)據(jù)庫連接符串
1.1 連接Oracle所使用的連接字符串
需要在.NET Framework引入OracleConnection 類庫以及所在的命名空間System.Data.OracleClient,然后通過"Data Source=MyBookDb; User Id=MyId; Password=MyPasswd; Integrated Security=no; "這個連接字符串即可使用ADO.NET來訪問ORACLE數(shù)據(jù)庫了。其中Integrated Security=no表示沒有集成Windows的驗證方式,在連接的過程中必須要使用正確的用戶名和密碼才能訪問數(shù)據(jù)庫。
1.2 連接SQL Server所使用的連接字符串
需要在.NET Framework引入SqlConnection類庫以及所在的命名空間System.Data.SqlClient,然后通過"Server=MyServer; Database=MyBookDb; User ID=MyId; Password=MyPasswd; Trusted_Connection=False" ,連接字符串來進(jìn)行訪問,其中Trusted_Connection=False也是需要通過使用正確的用戶名和密碼才能訪問數(shù)據(jù)庫。
1.3 連接ACCESS所使用的連接字符串
需要在.NET Framework引入OleDbConnection類庫以及所在的命名空間System.Data.OleDb,然后通過"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=MyBookDb.mdb; Jet OLEDB:Database Password=MyPasswd; "字符串,使用ADO.NET中的對象即可訪問ACCESS數(shù)據(jù)庫。
1.4 連接Sybase所使用的連接字符串
需要在.NET Framework引入AseConnection類庫以及所在的命名空間Sybase.Data.Aseclient?,它的連接字符串為"Data Source='MyServer'; Port=5000; Database='MyBookDb'; UID='MyId'; PWD='MyPasswd'; "在Sybase連接字符串中增加了Port=5000,表示的是數(shù)據(jù)庫的端口號。連接成功后就可以正常訪問數(shù)據(jù)庫了。
1.5 連接MySQL所使用的連接字符串
對于MySQL數(shù)據(jù)庫?,我們可以使用一個第三方的工具dotConnect for MySQL所提供的功能來訪問數(shù)據(jù),它的連接字符串為User ID=MyId;Password=MyPasswd;Host=localhost;Port=3306;Database=MyBookDb;Direct=true;Protocol=TCP;Compress=false;Pooling=true;Min Pool Size=0;
Max Pool Size=100;Connection Lifetime=0;連接成功后可以完全像在使用ADO.NET中的對象一樣來訪問數(shù)據(jù)庫。
對于其余的數(shù)據(jù)庫,我們都可以使用同樣的方式利用ODBC或OLEDB的方式來訪問,例如:如果要訪問EXCEL數(shù)據(jù),可以通過連接字符ODBC的連接字符串"Driver={Microsoft Excel Driver (*.xls)}; DriverId=790; Dbq=C:\MyBookDb.xls; DefaultDir=c:\mypath; "來訪問,讀寫數(shù)據(jù)庫的方式都大同小異。
2 ADO.NET通過連接字符串進(jìn)行數(shù)據(jù)庫操作
ADO.NET共有五大對象,分別是Connection 對象,用于對數(shù)據(jù)庫進(jìn)行連接;Command對象,用于對數(shù)據(jù)庫執(zhí)行命令; DataReader對象,用于從數(shù)據(jù)庫中按順序讀取數(shù)據(jù);DataSet對象,用于對數(shù)據(jù)庫執(zhí)行命令和緩存數(shù)據(jù);DataAdapter對象,是數(shù)據(jù)集和數(shù)據(jù)庫之間聯(lián)系的橋梁。通過這些對象的使用,即可輕松操作數(shù)據(jù)庫,下面我面來看一下通過ADO.NET操作數(shù)據(jù)庫的基本步驟和方法。這里主要使用C#語言并通過ADO.NET的對象來操作數(shù)據(jù)庫。
通過以上操作,即可方便地訪問數(shù)據(jù)庫資源,對數(shù)據(jù)庫的增、刪、查、改同上面的操作過程類似,沒有特別之處。在程序設(shè)計過程中,通常將前面的功能封裝到一個函數(shù)中,需要的時候直接調(diào)用函數(shù)即可。
4 結(jié)束語
我們介紹了在ADO.NET中幾種常用的數(shù)據(jù)庫連接字符串的方法,并寫出了一個操作數(shù)據(jù)庫的具體執(zhí)行步驟,當(dāng)掌握了以上方法后,編程人員就可以輕松操作各種數(shù)據(jù)庫。
參考文獻(xiàn):
[1] 王寶祥. 基于ADO.NET的數(shù)據(jù)庫訪問技術(shù)研究[J]. 計算機(jī)應(yīng)用與軟件, 2004(2).
[2] 張躍廷. C#數(shù)據(jù)庫系統(tǒng)開發(fā)案例精選[M]. 北京: 人民郵電出版社, 2007.
[3] 孟現(xiàn)飛, 李浩, 孫統(tǒng)風(fēng). ADO.NET數(shù)據(jù)訪問模型研究[J]. 微機(jī)發(fā)展, 2003(13): 94-97.