❶ ODBC是什麼意思
ODBC是一種連接資料庫的開放標准。
ODBC(Open DataBase Connectivity,開放資料庫互連)是微軟公司開放服務結構(WOSA,Windows Open Services Architecture)中有關資料庫的一個組成部分,它建立了一組規范,並提供了一組對資料庫訪問的標准API(應用程序編程介面)。這些API利用SQL來完成其大部分任務。ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。
它本身就是為了是資料庫的使用者不必考慮使用的是何種資料庫而只需要相同的操作而設計的。
ODBC是Open Database Connect即開放資料庫互連的簡稱,它是由Microsoft 公司於1991 年提出的一個用於訪問資料庫的統一界面標准,是應用程序和資料庫系統之間的中間件。它通過使用相應應用平台上和所需資料庫對應的驅動程序與應用程序的交互來實現對資料庫的操作,避免了在應用程序中直接調用與資料庫相關的操作,從而提供了資料庫的獨立性。
ODBC 主要由驅動程序和驅動程序管理器組成。驅動程序是一個用以支持ODBC 函數調用的模塊,每個驅動程序對應於相應的資料庫,當應用程序從基於一個資料庫系統移植到另一個時,只需更改應用程序中由ODBC 管理程序設定的與相應資料庫系統對應的別名即可。驅動程序管理器可鏈接到所有ODBC 應用程序中,它負責管理應用程序中ODBC 函數與DLL 中函數的綁定。
ODBC 使用層次的方法來管理資料庫,在資料庫通信結構的每一層,對可能出現依賴資料庫產品自身特性的地方,ODBC 都引入一個公共介面以解決潛在的不一致性,從而很好地解決了基於資料庫系統應用程序的相對獨立性,這也是ODBC 一經推出就獲得巨大成功的重要原因之一。
從結構上分,ODBC 分為單束式和多束式兩類。
1.單束式驅動程序
單束式驅動程序介於應用程序和資料庫之間,像中介驅動程序一樣數據提供一個統一的數據訪問方式。當用戶進行資料庫操作時,應用程序傳遞一個ODBC 函數調用給ODBC 驅動程序管理器,由ODBC API 判斷該調用是由它直接處理並將結果返回還是送交驅動程序執行並將結果返回。由上可見,單束式驅動程序本身是一個資料庫引擎,由它直接可完成對資料庫的操作,盡管該資料庫可能位於網路的任何地方。
2.多束式驅動程序
多束式驅動程序負責在資料庫引擎和客戶應用程序之間傳送命令和數據,它本身並不執行數據處理操作而用於遠程操作的網路通信協議的一個界面。前端應用程序提出對資料庫處理的請求,該請求轉給ODBC 驅動程序管理器,驅動程序管理器依據請求的情況,就地完成或傳給多束驅動程序,多束式驅動程序將請求翻譯為特定廠家的資料庫通信介面(如Oracle 的SQLNet)所能理解的形式並交於介面去處理,介面把請求經網路傳送給伺服器上的數據引擎,伺服器處理完後把結果發回給資料庫通信介面,資料庫介面將結果傳給多束式ODBC 驅動程序,再由驅動程序將結果傳給應用程序。
❷ ODBC資料庫是什麼
ODBC是微軟公司開放服務結構(WOSA,Windows Open Services Architecture)中有關資料庫的一個組成部分,它建立了一組規范,並提供了一組對資料庫訪問的標准API(應用程序編程介面)。這些API利用SQL來完成其大部分任務。
ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。一組數據的位置,可以使用 ODBC驅動程序訪問該位置。
一個完整的ODBC由下列幾個部件組成:
1、應用程序(Application)。
2、ODBC管理器(Administrator)。該程序位於Windows控制面板(Control Panel)的管理工具內,其主要任務是管理安裝的ODBC驅動程序和管理數據源。
3、驅動程序管理器(Driver Manager)。驅動程序管理器包含在ODBC32.DLL中,對用戶是透明的。其任務是管理ODBC驅動程序,是ODBC中最重要的部件。
4、ODBC API。
5、ODBC 驅動程序。是一些DLL,提供了ODBC和資料庫之間的介面。
6、數據源。數據源包含了資料庫位置和資料庫類型等信息,實際上是一種數據連接的抽象。
❸ 什麼是ODBC資料庫!可以詳細解釋一下嗎!
ODBC(開放式的資料庫連接)是一重公認的關系數據源的介面.它快而輕,並且提供統一的介面.
ODBC也是微軟公司開放服務結構(Windows
Open
Services
Architeture,WOSA)中有關資料庫的組成部分,它建立了一組規范,並提供了一組對資料庫訪問的標准API(應用程序編程介面).這些API利用SQL來完成大部分任務.ODBC本身也提供了對於SQL語言的支持.
一個基於ODBC的應用程序對資料庫的操作不依賴任何DBMS(資料庫管理系統),不直接與DBMS打交道,所有的資料庫操作由對應的DBMS的ODBC驅動程序完成.也就是說,無論是FoxPro,Access,還是Oracle,資料庫,均可用ODBC
API進行訪問.由此可見,基於ODBC的資料庫都可以一用意的方式進行處理.
❹ 資料庫編程用ADO好,還是ODBC好
這要看具體情況,如果對資料庫的底層訪問很看重,則用ODBC,如果只是需要一個資料庫的介面,而具體細節不是很重要的話,則用ADO。大多數情況下,使用ADO。
ODBC:
直接使用ODBC API編寫應用程序需要編制大量代碼,Visual C++提供了MFC ODBC類,其中封裝了ODBC API,因此,使用MFC來創建ODBC的應用程序非常簡便。主要的MFC ODBC類如下所示。
CDatabase類:一個CDatabase對象表示一個到數據源的連接,通過它可以操作數據源。應用程序可使用多個CDatabase對象,構造一個對象並調用OpenEx()成員函數打開一個連接。接著構造CRecordSet對象以操作連接的數據源,並向 CDatabase對象傳遞記錄集構造程序指針。完成後用Close()成員函數銷毀CDatabase對象。一般情況下並不需要直接使用CDatabase對象,因為CRecordSet對象可以實現大多數的功能。但是在進行事務處理時,CDatabase就起到關鍵作用。事務(Transaction)指的是將一系列對數據源的更新放在一起,同時提交或一個也不提交,為的是確保多用戶對數據源同時操作時的數據正確性。
CRecordSet類:一個CRecordSet對象代表一個從數據源選擇的一組記錄的集合——記錄集。記錄集有兩種形式,snapshot和dynaset,前者表示數據的靜態試圖,後者表示記錄集和其他用戶對資料庫的更新保持同步。通過CRecordSet對象,用戶可以對資料庫中的記錄進行各種操作。
CRecordView類:CRecordView對象是在空間中顯示資料庫記錄的視圖。這種視圖是一種直接連到CRecordSet對象的格式視圖,它從一個對話框模板資源創建,並將CRecordSet對象的欄位顯示在對話框模板的控制項中。對象利用DDX和RFX機制,使格式上的控制項和記錄集的欄位之間數據移動自動化,也就是說,用戶不用編寫一行代碼就可以實現簡單的資料庫記錄查看操作。
CDBException:由Cexception類派生,以3個繼承的成員變數反映對資料庫操作時的異常。
m_nRetCode:以ODBC返回代碼(SQL_RETURN)的形式表明造成異常的原因。
m_strError:字元串,描述造成拋出異常的錯誤原因。
m_strStateNativeOrigin:字元串,用以描述以ODBC錯誤代碼表示的異常錯誤。
MFC資料庫類成員函數都能拋出CDBException類型異常,所以在代碼對資料庫進行操作後監測異常是正確的做法。
ADO:
ADO技術是基於OLE DB的訪問介面,它繼承了OLE DB技術的優點,並且,ADO對OLE DB的介面作了封裝,定義了ADO對象,使程序開發得到簡化。ADO技術屬於資料庫訪問的高層介面。ADO基於COM,提供編程語言可利用的對象,除了面向VC++,還提供面向其他各種開發工具的應用,如VB、VJ等。ADO在伺服器應用方面非常有效,特別是對於動態伺服器頁面(ASP,Active Server Page)的支持。
ADO對象結構類似於OLE DB,但並不依靠對象層次。大多數情況下,用戶只需要創建並使用需要處理的對象。ADO 最主要的優點是易於使用、速度快、內存支出少和磁碟遺跡小。ADO 在關鍵的應用方案中使用最少的網路流量,並且在前端和數據源之間使用最少的層數,所有這些都是為了提供輕量、高性能的介面。下面的對象類組成了ADO介面。
Connection:用於表示與資料庫的連接,以及處理一些命令和事務。
Command:用於處理傳送給數據源的命令。
Recordset:用於處理數據的表格集,包括獲取和修改數據。
Field:用於表示記錄集中的列信息,包括列值和其他信息。
Parameter:在傳送給數據源的命令之間傳遞數據。
Property:用於操作在ADO中使用的其他對象的詳細屬性。
Error:用於獲得可能發生的詳細錯誤信息。
❺ STMT是什麼的縮寫,在ODBC API編程中的STMT, 100分求解
是這個Statement對象的縮寫吧,用於執行不帶參數的簡單SQL語句。