Visual C++ 中的ODBC編程的介紹
2024-07-16 17:45:15
供稿:網友
一.概述
ODBC 是一種使用SQL 的程序設計接口。使用ODBC 讓應用程序的編寫者避免了與數據源相聯的復雜性。這項技術目前已經得到了大多數DBMS 廠商們的廣泛支持。
Microsoft Developer Studio 為大多數標準的數據庫格式提供了32 位ODBC 驅動器。這些標準數據格式包括有:SQL Server、Access、Paradox、dBase、FoxPro、Excel、Oracle 以及Microsoft Text。如果用戶希望使用其他數據格式,用戶需要相應的ODBC 驅動器及DBMS。
用戶使用自己的DBMS 數據庫管理功能生成新的數據庫模式后,就可以使用ODBC 來登錄數據源。對用戶的應用程序來說,只要安裝有驅動程序,就能注冊很多不同的數據庫。登錄數據庫的具體操作參見有關ODBC 的聯機幫助。
二.MFC 提供的ODBC 數據庫類
Visual C++ 的MFC 基類庫定義了幾個數據庫類。在利用ODBC 編程時,經常要使用到CDatabase( 數據庫類),CRecordSet( 記錄集類) 和CRecordView( 可視記錄集類)。其中:
CDatabase 類對象提供了對數據源的連接,通過它你可以對數據源進行操作。
CRecordSet 類對象提供了從數據源中提取出的記錄集。CRecordSet 對象通常用于兩種形式:動態行集(dynasets)和快照集(snapshots)。動態行集能保持與其他用戶所做的更改保持同步。快照集則是數據的一個靜態視圖。每一種形式在記錄集被打開時都提供一組記錄,所不同的是,當你在一個動態行集里滾動到一條記錄時,由其他用戶或是你應用程序中的其他記錄集對該記錄所做的更改會相應地顯示出來。
CRecordView 類對象能以控制的形式顯示數據庫記錄。這個視圖是直接連到一個CRecordSet 對象的表視圖。
三.應用ODBC 編程
應用Visual C++ 的AppWizard 可以自動生成一個ODBC 應用程序框架。方法是:打開File 菜單的New 選項,選取Projects,填入工程名,選擇MFC AppWizard (exe),然后按AppWizard 的提示進行操作。當AppWizard 詢問是否包含數據庫支持時,如果你想讀寫數據庫,那么選定Database view with file support;而 閬敕夢適菘獾男畔⒍幌牖匭此齙母謀洌敲囪《―atabase view without file support 選項就比較合適了。選擇了數據庫支持之后Database Source 按鈕會激活,選中它去調用Data Options 對話框。在Database Options 對話框中會顯示已向ODBC 注冊的數據庫資源,選定你所要操作的數據庫,如:Super_ES,單擊OK 后會出現Select Database Tables 對話框,其中列舉了你所選中的數據庫中包含的全部表,選擇你希望操作的表后,單擊OK。在選定了數據庫和數據表之后,你可以按照慣例繼續進行AppWizard 操作。
特別需要指出的是:在生成的應用程序框架View 類(如:CSuper_ESView)中包含一個指向CSuper_ESSet 對象的指針m_pSet,該指針由AppWizard 建立,目的是在視表單和記錄集之間建立聯系,使得記錄集中的查詢結果能夠很容易地在視表單上顯示出來。有關m_pSet 的詳細用法可以參見Visual C++ Online Book。