程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB.NET >> ODBC的構造

ODBC的構造

編輯:VB.NET

ODBC的構造。本站提示廣大學習愛好者:(ODBC的構造)文章只能為提供參考,不一定能成為您想要的結果。以下是ODBC的構造正文


假如使用順序調用一個ODBC API函數,ODBC Administrator或Driver Manager會把命令傳遞給適當的驅動順序。經過翻譯之後,驅動順序會將命令傳遞給特定的後端數據庫服務器,采用它能了解的言語或代碼。而經過ODBC前往的任何後果或後果集都將會沿著相反的方向傳遞。ODBC的構造如圖所示:


圖:ODBC的構造

對Visual Basic使用順序來說,在處置函數調用時,驅動順序和驅動順序管理器(Driver Manage)是一個全體。使用順序用ODBC API來完成以下義務:
(1)懇求與數據源樹立銜接,創立一次會話;
(2)向數據源收回SQL懇求;
(3)定義一個緩沖區和數據格式,用來存儲SQL懇求後果;
(4)提取SQL懇求的後果;
(5)處置各種錯誤;
(6)給用戶報告後果;
(7)事務提交或事務撤銷;
(8)中綴與數據源的銜接。
上述構造中,驅動順序管理器(Driver Manager)是一個DLL,它由Microsoft提供,是一個帶有入口函數庫的靜態銜接,驅動順序管理器的根本義務是加載驅動順序。此外,還具有以下功用:
(1)依據ODBC.INI文件,把數據源名映射到相應的驅動順序;
(2)處置幾個ODBC初始化函數;
(3)停止參數合法化檢驗。
構造圖中SQL Server ODBC驅動順序是一個DLL,用來完成ODBC函數調用並與數據源停止對話。當使用順序調用SQLDriverConnection時,驅動順序管理器加載驅動順序。依據相應順序的要求,驅動順序可以完成以下義務:
(1)樹立與數據源的銜接;
(2)向數據源提交懇求;
(3)依據使用順序的需求,完成數據格式的轉換;
(4)把後果前往給使用順序;
(5)請求並控制游標(Cursor);
(6)依據數據源的需求,完成事務初始化。
上述這些功用對使用順序來說都是通明的。
構造圖中的物理數據源是DBMS、操作零碎和網絡平台的一個綜合體。
和Windows其他中央一樣,為了處置對象,ODBC需運用相應的句柄。在能真正做些什麼事情以前,必需先從ODBC或Windows取得這種句柄。ODBC提供了四個句柄:環境、銜接、語句和描繪符句柄,並且必需在銜接數據源之前請求環境句柄。銜接句柄的作用是將資源分配給實踐的數據源銜接。使用順序在與數據源銜接以前必需先請求銜接句柄,每個銜接句柄只與一個環境句柄相連,一個環境句柄可與多個銜接句柄相連;語句句柄用於管理對零碎收回的實踐懇求,它必需與一個銜接關聯在一同,而這個銜接也必需與環境關聯到一同,使用順序在提交SQL懇求以前必需先懇求一個語句句柄,每一個語句句柄只與一個銜接句柄相連,一個銜接句柄可與多個語句句柄相連;描繪符句柄則提供一些特殊的描繪信息,例如後果集的數據列信息,或SQL語句的靜態參數等等。下圖顯示了環境句柄、銜接句柄和語句句柄之間的關系。

每一種SQL數據類型對應一種Visual Basic數據類型。在默許的狀況下,驅動順序假定SQL語句中的列或參數的數據類型與銜接在其上的Visual Basic數據類型是絕對應的。假如Visual Basic數據類型不運用默許的數據類型,使用順序可以用函數SQLBindCol、SQLGetData、SQLBindParameter中的參數fcType來指定另外一個數據類型。在從數據源前往數據之前,驅動順序將數據轉換為指定的數據類型。異樣,在把數據傳給數據源之前,驅動順序將指定的Visual Basic數據類型轉換成SQL數據類型。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved