首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證
華為認證 | Java認證
公務員 | 報關員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護士
會計從業(yè)資格考試會計證) | 經(jīng)濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師
注冊資產(chǎn)評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內(nèi)審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質量工程師 | 物業(yè)管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產(chǎn)估價師 | 土地估價師 | 巖土師
設備監(jiān)理師 | 房地產(chǎn)經(jīng)紀人 | 投資項目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

等考三級數(shù)據(jù)庫:幾種注冊ODBC數(shù)據(jù)源的方法

本文為“等考三級數(shù)據(jù)庫:幾種注冊ODBC數(shù)據(jù)源的方法”,以供廣大學員參考使用。更多關于計算機等級考試資料,請訪問考試吧計算機等級考試頻道。

  幾種注冊ODBC數(shù)據(jù)源的方法

  ODBC(Open Database Connectivity,開放式數(shù)據(jù)庫互連)是一種應用程序接口 (API) 規(guī)范。它定義了一個標準例程集,使用它們應用程序可訪問數(shù)據(jù)源中的數(shù)據(jù)。應用程序通過引用 API 的函數(shù)可以直接使用 ODBC,或利用數(shù)據(jù)訪問對象 (DAO) 或遠程數(shù)據(jù)對象 (RDO) 來使用ODBC。但是,在實現(xiàn)ODBC時,我們必須首先配置ODBC環(huán)境,進行數(shù)據(jù)源的注冊,這樣才能在對數(shù)據(jù)庫進行編程時,對數(shù)據(jù)源進行連接、訪問和操作。本文介紹幾種常用的注冊ODBC數(shù)據(jù)源的方法。

  手工配置

  1.ODBC數(shù)據(jù)源管理器

  在進行數(shù)據(jù)庫開發(fā)時,為了達到配置ODBC,進行DSN定義注冊的目的,微軟給出了一個手工操作的解決方法。在Windows 9X操作系統(tǒng)的控制面板中,有一個名為“ODBC數(shù)據(jù)源(32位)”的圖標,可以通過它激活專門為用戶設置ODBC環(huán)境的程序(ODBC Data Source Administrator,ODBC數(shù)據(jù)源管理器)。在Windows 2000操作系統(tǒng)中,上述圖標被放置在控制面板的“管理工具”里面。

  這個用于設置ODBC環(huán)境的程序叫做桌面驅動程序,它支持數(shù)種DBMS(Database Management System,數(shù)據(jù)庫管理系統(tǒng))。當用戶想增加一個數(shù)據(jù)源和一個所需要的驅動程序時,可以通過ODBC數(shù)據(jù)源管理器的配置對話框配置特定類型的數(shù)據(jù)庫。大多數(shù)情況下,在編寫對數(shù)據(jù)庫操作的程序時,我們至少需要知道諸如數(shù)據(jù)庫文件名、系統(tǒng)(本地或遠程)、文件夾等信息,同時要給數(shù)據(jù)源命名。

  2.定義數(shù)據(jù)源的類型

  用戶可以定義以下三種類型的數(shù)據(jù)源:

  用戶數(shù)據(jù)源:作為位于計算機本地的用戶數(shù)據(jù)源而創(chuàng)建的,并且只能被創(chuàng)建這個數(shù)據(jù)源的用戶所使用;

  系統(tǒng)數(shù)據(jù)源:作為屬于計算機或系統(tǒng)而不是特定用戶的系統(tǒng)數(shù)據(jù)源而創(chuàng)建的,用戶必須有訪問權才能使用;

  文件數(shù)據(jù)源:指定到文件中作為文件數(shù)據(jù)源而定義的,任何已經(jīng)正確地安裝了驅動程序的用戶皆可以使用這種數(shù)據(jù)源。

  3.數(shù)據(jù)源注冊的步驟

  以Microsoft Access為例,如果在C:\myfile\文件夾里創(chuàng)建了一個名為myexample.mdb的數(shù)據(jù)庫文件,其注冊步驟如下:

  在控制面板里找到“ODBC數(shù)據(jù)源”圖標,打開數(shù)據(jù)源管理器的交互界面;

  筆者創(chuàng)建的數(shù)據(jù)庫文件是供本機上的用戶使用的,所以這里選擇“用戶 DSN”;

  然后按下“添加”按鈕,在彈出的數(shù)據(jù)源管理器對話框里,為自己所要創(chuàng)建的數(shù)據(jù)源選擇一個驅動程序,本文的數(shù)據(jù)庫文件是用Microsoft Access創(chuàng)建的,所以要選擇“Microsoft Access Driver (*.mdb)”;

  按“完成”按鈕后,進入一個標題為“ODBC Microsoft Access 安裝”的界面,在其中設置“數(shù)據(jù)源名”為“mydatasource”,選取數(shù)據(jù)庫文件 “C:\myfile\myexample.mdb”,然后確定即可。

  這樣我們就完成了一個簡單的ODBC數(shù)據(jù)源的注冊。當然,在以上的步驟中,用戶可以根據(jù)自己的不同需要,設置不同的選項。

  注冊結束后,我們便可以在對數(shù)據(jù)庫的編程中,操作該數(shù)據(jù)庫了。

  在VB中注冊數(shù)據(jù)源

  在VB中對數(shù)據(jù)庫進行編程時,可以利用RegisterDataSource方法為ODBC數(shù)據(jù)源輸入連接信息到 Windows 注冊表中。它的語法是:

  RegisterDataSource DSN, driver, silent, attributes

  其中參數(shù)代表的含義分別為:

  DSN:字符串表達式,它是在引用數(shù)據(jù)源描述信息塊時所使用的名字。例如,如果數(shù)據(jù)源是一個ODBC遠程數(shù)據(jù)庫,這就是服務器的名字;如果是用戶DSN,則是注冊的數(shù)據(jù)源的名字。

  drive:字符串表達式,表示ODBC驅動程序的名稱。它并不是 ODBC 驅動程序動態(tài)連接庫 (DLL) 文件名。例如,SQL Server 是驅動程序名,而 SQLSRVR.DLL 是 DLL 文件名。必須安裝ODBC 及相應的驅動程序。

  silent:布爾類型值,如果不想顯示 ODBC 驅動程序對話框,用以提示指定驅動程序的信息,該值就為 True;如果希望顯示 ODBC 驅動程序對話框,該值就為 False。如果 silent 為 True,那么attributes必須包含所有必需的指定驅動程序的信息。

  attributes:字符串表達式,它是一個要添加到 ODBC.INI 文件中的關鍵字列表。編寫程序時,可以根據(jù)需要選擇若干attributes的參數(shù)進行設置。

  例如:我們可以編寫如下的VB程序,達到與上面手工注冊一樣的目的。程序清單如下:

  Sub RegisterDataSource()

  Dim strAttribs As String

  ’建造關鍵字字符串。

  ’C:\myfile\myexample.l.mdb數(shù)據(jù)庫文件名(包含路徑)

  strAttribs =“DBQ=” _

  & “C:\myfile\myexample.mdb” _

  & Chr$(13) & “OemToAnsi=No” _

  & Chr$(13) & “SERVER=SEQUEL” _

  & Chr$(13) & “Network=DBNMPNTW” _

  & Chr$(13) & “Database=WorkDB”_

  & Chr$(13) &“Address=\\SEQUEL\PIPE\SQL\QUERY”

  ’建立新的注冊的 DSN。

  rdoEngine.rdoRegisterDataSource “mydatasource”,

  “Microsoft Access Driver (*.mdb)”, True,

  strAttribs

  End Sub

  Private Sub Form_Load()

  Call rdoRegisterDataSource

  End Sub

  注意:為了在代碼中使用rdoEngine和遠程數(shù)據(jù)對象,必須先在“引用"對話框中設置一個到 Microsoft Remote Data Object 2.0 對象庫的引用,否則在第一次引用rdoEngine 對象時會導致編譯錯誤。

  利用注冊表合并

  1.解決思路

  考查ODBC數(shù)據(jù)源注冊后對Windows注冊表的修改情況,我們可以發(fā)現(xiàn)所注冊的數(shù)據(jù)源對Windows注冊表的影響關鍵集中在[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI]里。

  這樣,我們導出[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI],每次以之為模板,把所要注冊的數(shù)據(jù)源信息加入到注冊表導出文件的對應位置,然后再將該文件與系統(tǒng)注冊表合并即可。

  2.具體操作

  首先,我們要弄清楚Regedit 及其參數(shù)的含義。Regedit是打開系統(tǒng)注冊表的命令。在“開始\運行\(zhòng)”中輸入即可。它的三個參數(shù)含義如下:

  Regedit /e myfile.reg :表示把注冊表文件導出到myfile.reg 文件中,相當于復制整個注冊表文件到myfile.reg中;

  Regedit /c myfile.reg:表示把myfile.reg導入注冊表,相當于用該文件的內(nèi)容覆蓋了注冊表的內(nèi)容;

  Regedit /s myfile.reg :表示把myfile.reg文件的內(nèi)容與注冊表文件的內(nèi)容進行合并。

  我們只需在注冊表中將有用的部分導出,而后將所要注冊的數(shù)據(jù)源的信息加入,再與系統(tǒng)注冊表合并就可以了。這個合并的過程,我們既可以手工輸入來實現(xiàn),也可以通過編程實現(xiàn)自動合并。

  注意:為了防止誤操作,一定要將系統(tǒng)注冊表作一次備份。

  小 結

  從安全的角度考慮,筆者首推利用在Windows控制面板中的ODBC數(shù)據(jù)源管理工具來進行數(shù)據(jù)源注冊,以免因對注冊表的不熟或疏忽造成不必要的損失。當然,還有一些應用工具,可以實現(xiàn)對ODBC數(shù)據(jù)源的注冊,用戶可以根據(jù)不同的需求選擇使用。

文章搜索
版權聲明:如果計算機等級考試網(wǎng)所轉載內(nèi)容不慎侵犯了您的權益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉載本計算機等級考試網(wǎng)內(nèi)容,請注明出處。