在Visual C++中利用UDL檔案建ADO連線(轉)

ba發表於2007-08-15
在Visual C++中利用UDL檔案建ADO連線(轉)[@more@]使用通用資料連線檔案(*.UDL,以下簡稱檔案)來建立ADO連線,可以和ODBC一樣視覺化地定義要連線的資料來源,從而實現資料訪問的透明性。

1.使用UDL檔案來建立ADO連線

建立ADO的連線,首先要設定ADO連線物件的ConnectionString屬性,該屬性提供所要連線的資料庫型別、資料所處伺服器、要訪問的資料庫和資料庫訪問的安全認證資訊。比較專業的方法是在ConnectionString中直接提供以上資訊,下面是訪問不同型別資料來源設定 ConnectionString的標準:
訪問ODBC資料
"Provider=MSDASQL;DSN=dsnName;UID=userName;PWD=userPassword;"
訪問ORACLE資料庫
"Provider=MSDAORA;Data Source=serverName;User ID=userName; Password=userPassword;"
訪問MS SQL資料庫
"Provider=SQLOLEDB;Data Source=serverName;Initial Catalog=databaseName; User ID=userName;Password=userPassword;"
訪問ACCESS 資料庫
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=databaseName;User ID=userName;Password=userPassword;"

上述的連線屬性設定標準隨著資料來源的型別不同而變化,軟體使用者常常不習慣這種設定方式,都希望有視覺化的資料來源設定方法。為此Microsoft提供了通用資料連線檔案(.UDL)來建立和測試ADO連線屬性。ADO連線物件可以很方便地使用UDL檔案來連線資料來源,下面例子使用my_data1.udl來建立ADO連線。

_ConnectionPtr m_pDBConn;
m_pDBConn.CreateInstance(__uuidof(Connection));
m_pDBConn->ConnectionString ="File Name=c:mydirmy_data1.udl";
m_pDBConn->Open("","","",NULL);

這樣一來無論資料來源如何變化,在軟體中都可以用統一的方法程式設計。當資料來源改變時,只要雙擊相應的udl檔案即可視覺化地設定資料來源,無需更改軟體。

因為ADO是COM介面,為了軟體的可靠性,開啟ADO連線時,可以加入異常處理程式碼。

try{
m_pDBConn->Open("","","",NULL);
}catch(_com_error &e){
//處理異常的程式碼
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
m_pDBConn=NULL;
}

因為_ConnectionPtr m_pDBConn是智慧指標,應在處理異常程式碼時將智慧指標設為NULL後將自動將引用計數降為0。

如果不出現異常,只要在使用完m_pDBConn,只要引用Close方法即可。

2.建立你所需的UDL檔案

在你所想建立UDL檔案的目錄中單擊右鍵,選擇從選單 新建|Microsoft 資料連線,然後將新建立的UDL檔案更改為你所希望的檔名(.UDL副檔名不能改變)。

注:如果作業系統是Window 2000,先建立一個文字檔案,再將該文字檔案的副檔名改為 "udl"。

然後雙擊所建立的UDL檔案,即視覺化地完成資料來源的設定。

使用UDL檔案必須在系統中先安裝Microsoft MDAC,Win 98第二版,Win 2000中都自動包含了該元件,需要該元件最新版本時可以到Microsoft網站去下載。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-957671/,如需轉載,請註明出處,否則將追究法律責任。

相關文章