中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      全面了解ODBC技術(shù)

      時(shí)間:2024-09-12 08:25:12 計(jì)算機(jī)畢業(yè)論文 我要投稿
      • 相關(guān)推薦

      全面了解ODBC技術(shù)

      目前,眾多的廠商推出了行行色色的數(shù)據(jù)庫(kù)系統(tǒng),它們?cè)谛阅堋r(jià)格和應(yīng)用范圍上各有千秋。一個(gè)綜合信息系統(tǒng)的各部門(mén)由于需求差異等原因,往往會(huì)存在多種數(shù)據(jù)庫(kù),它們之間的互連訪問(wèn)成為一個(gè)棘手的問(wèn)題,特別是當(dāng)用戶需要從客戶機(jī)端訪問(wèn)不同的服務(wù)器時(shí)。
      微軟提出的開(kāi)放式數(shù)據(jù)庫(kù)互連(Open-DataBase-Connectivity,即ODBC)成為目前一個(gè)強(qiáng)有力解決方案,并逐步成為Windows和Macintosh平臺(tái)上的標(biāo)準(zhǔn)接口,并推動(dòng)了這方面的開(kāi)放性和標(biāo)準(zhǔn)化。
      一、ODBC的產(chǎn)生和發(fā)展
      關(guān)系型數(shù)據(jù)庫(kù)產(chǎn)生后很快就成為數(shù)據(jù)庫(kù)系統(tǒng)的主流產(chǎn)品,由于每個(gè)DBMS廠商都有自己的一套標(biāo)準(zhǔn),人們很早就產(chǎn)生了標(biāo)準(zhǔn)化的想法,于是產(chǎn)生了SQL,由于其語(yǔ)法規(guī)范逐漸為人所接受,成為RDBMS上的主導(dǎo)語(yǔ)言。最初,各數(shù)據(jù)庫(kù)廠商為了解決互連的問(wèn)題,往往提供嵌入式SQL API,用戶在客戶機(jī)端要操作系統(tǒng)中的RDBMS時(shí),往往要在程序中嵌入SQL語(yǔ)句進(jìn)行預(yù)編譯。由于不同廠商在數(shù)據(jù)格式、數(shù)據(jù)操作、具體實(shí)現(xiàn)甚至語(yǔ)法方面都具有不同程度的差異,所以彼此不能兼容。
      長(zhǎng)期以來(lái),這種API的非規(guī)范情況令用戶和RDBMS廠商都不能滿意。在80年代后期,一些著名的廠商包括Oracle、Sybase、Lotus、Ingres、Informix、HP、DEC等結(jié)成了SQL Access Group(簡(jiǎn)稱SAG),提出了SQL API的規(guī)范核心:調(diào)用級(jí)接口(Call Level Interface),簡(jiǎn)稱CLI。
      1991年11月,微軟宣布了ODBC,次年推出可用版本。1992年2月,推出了ODBC SDK 2.0版。ODBC基于SAG的SQL CAE草案所規(guī)定的語(yǔ)法,共分為Core、Level 1、 Level 2三種定義,分別規(guī)范了22、16、13共51條命令,其中29條命令甚至超越了SAG CLI中原有的定義,功能強(qiáng)大而靈活。它還包括標(biāo)準(zhǔn)的錯(cuò)誤代碼集、標(biāo)準(zhǔn)的連接和登錄DBMS方法、標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型表示等。
      由于ODBC思想上的先進(jìn)性,且沒(méi)有同類(lèi)的標(biāo)準(zhǔn)或產(chǎn)品與之競(jìng)爭(zhēng),它一枝獨(dú)秀,推出后僅僅兩三年就受到了眾多廠家與用戶的青睞,成為一種廣為接受的標(biāo)準(zhǔn)。目前,已經(jīng)有130多家獨(dú)立廠商宣布了對(duì)ODBC的支持,常見(jiàn)的DBMS都提供了ODBC的驅(qū)動(dòng)接口,這些廠商包括Oracle、Sybase、Informix、Ingres、IBM(DB/2)、DEC(RDB)、HP(ALLBASE/SQL)、Gupta、Borland(Paradox)等。目前,ODBC已經(jīng)成為客戶機(jī)/服務(wù)器系統(tǒng)中的一個(gè)重要支持技術(shù)。
      二、ODBC的基本思想與特點(diǎn)
      ODBC的基本思想是為用戶提供簡(jiǎn)單、標(biāo)準(zhǔn)、透明的數(shù)據(jù)庫(kù)連接的公共編程接口,開(kāi)發(fā)廠商根據(jù)ODBC的標(biāo)準(zhǔn)去實(shí)現(xiàn)底層的驅(qū)動(dòng)程序,這個(gè)驅(qū)動(dòng)對(duì)用戶是透明的,并允許根據(jù)不同的DBMS采用不同的技術(shù)加以優(yōu)化實(shí)現(xiàn),這就利于不斷吸收新的技術(shù)而趨完善。
      這同時(shí)也就是數(shù)據(jù)庫(kù)驅(qū)動(dòng)的思想,它很類(lèi)似于Windows中打印驅(qū)動(dòng)的思想。在Windows中,用戶安裝不同的打印驅(qū)動(dòng)程序,使用同樣一條打印語(yǔ)句或操作,就可很容易地實(shí)現(xiàn)在不同打印機(jī)上打印輸出,而不需要了解內(nèi)部的具體原理。ODBC出現(xiàn)以后,用戶安裝不同的DBMS驅(qū)動(dòng)就可用同樣的SQL語(yǔ)句實(shí)現(xiàn)在不同DBMS上進(jìn)行同樣的操作,而且無(wú)需預(yù)編譯。ODBC帶來(lái)了數(shù)據(jù)庫(kù)連接方式的變革,如圖1所示。在傳統(tǒng)方式中,開(kāi)發(fā)人員要熟悉多個(gè)DBMS及其API,一旦DBMS端出現(xiàn)變動(dòng),則往往導(dǎo)致用戶端系統(tǒng)重新編建或者源代碼的修改,這給開(kāi)發(fā)和維護(hù)工作帶來(lái)了很大困難。在ODBC方式中,不管底層網(wǎng)絡(luò)環(huán)境如何,也無(wú)論采用何種DBMS,用戶在程序中都使用同一套標(biāo)準(zhǔn)代碼,無(wú)需逐個(gè)了解各DBMS及其API的特點(diǎn),源程序不因底層的變化而重新編建或修改,從而減輕了開(kāi)發(fā)維護(hù)的工作量,縮短了開(kāi)發(fā)周期。
      @@12W03500.GIF;圖1 數(shù)據(jù)庫(kù)連接方式的轉(zhuǎn)變@@
      概括起來(lái),ODBC具有以下靈活的特點(diǎn):
      1. 使用戶程序有很高的互操作性,相同的目標(biāo)代碼適用于不同的DBMS;
      2. 由于ODBC的開(kāi)放性,它為程序集成提供了便利,為客戶機(jī)/服務(wù)器結(jié)構(gòu)提供了技術(shù)支持;
      3. 由于應(yīng)用與底層網(wǎng)絡(luò)環(huán)境和DBMS分開(kāi),簡(jiǎn)化了開(kāi)發(fā)維護(hù)上的困難。
      三、ODBC的體系結(jié)構(gòu)和實(shí)現(xiàn)
      ODBC是依靠分層結(jié)構(gòu)來(lái)實(shí)現(xiàn)的,如此可保證其標(biāo)準(zhǔn)性和開(kāi)放性。圖2所示為ODBC的體系結(jié)構(gòu),它共分為四層:應(yīng)用程序、驅(qū)動(dòng)程序管理器、驅(qū)動(dòng)程序和數(shù)據(jù)源。微軟公司對(duì)ODBC規(guī)程進(jìn)行了規(guī)范,它為應(yīng)用層的開(kāi)發(fā)者和用戶提供標(biāo)準(zhǔn)的函數(shù)、語(yǔ)法和錯(cuò)誤代碼等,微軟還提供了驅(qū)動(dòng)程序管理器,它在Windows中是一個(gè)動(dòng)態(tài)鏈接庫(kù)即ODBC.DLL。驅(qū)動(dòng)程序?qū)佑晌④洝BMS廠商或第三開(kāi)發(fā)商提供,它必須符合ODBC的規(guī)程,對(duì)于Oracle,它是ORA6WIN.DLL,對(duì)于SQL Server,它是SQLSRVR.DLL。
      @@12W03501.GIF;圖2 ODBC體系結(jié)構(gòu)@@
      下面我們?cè)敿?xì)介紹各層的功能。
      1. 應(yīng)用程序?qū)?Application)
      使用ODBC接口的應(yīng)用程序可執(zhí)行以下任務(wù):
      ①請(qǐng)求與數(shù)據(jù)源的連接和會(huì)話(SQLConnect);
      ②向數(shù)據(jù)源發(fā)送SQL請(qǐng)求(SQLExecDirct或SQLExecute);
      ③對(duì)SQL請(qǐng)求的結(jié)果定義存儲(chǔ)區(qū)和數(shù)據(jù)格式;
      ④請(qǐng)求結(jié)果;
      ⑤處理錯(cuò)誤;
      ⑥如果需要,把結(jié)果返回給用戶;
      ⑦對(duì)事務(wù)進(jìn)行控制,請(qǐng)求執(zhí)行或回退操作(SQLTransact);
      ⑧終止對(duì)數(shù)據(jù)源的連接(SQLDisconnect)。
      2. 驅(qū)動(dòng)程序管理器(Driver Manager)
      由微軟提供的驅(qū)動(dòng)程序管理器是帶有輸入庫(kù)的動(dòng)態(tài)連接庫(kù)ODBC.DLL,其主要目的是裝入驅(qū)動(dòng)程序,此外還執(zhí)行以下工作:
      ①處理幾個(gè)ODBC初始化調(diào)用;
      ②為每一個(gè)驅(qū)動(dòng)程序提供ODBC函數(shù)入口點(diǎn);
      ③為ODBC調(diào)用提供參數(shù)和次序驗(yàn)證。
      3. 驅(qū)動(dòng)程序(Driver)
      驅(qū)動(dòng)程序是實(shí)現(xiàn)ODBC函數(shù)和數(shù)據(jù)源交互的DLL,當(dāng)應(yīng)用程序調(diào)用SQL Connect或者SQLDriver Connect函數(shù)時(shí),驅(qū)動(dòng)程序管理器裝入相應(yīng)的驅(qū)動(dòng)程序,它對(duì)來(lái)自應(yīng)用程序的ODBC函數(shù)調(diào)用進(jìn)行應(yīng)答,按照其要求執(zhí)行以下任務(wù):
      ①建立與數(shù)據(jù)源的連接;
      ②向數(shù)據(jù)源提交請(qǐng)求;
      ③在應(yīng)用程序需求時(shí),轉(zhuǎn)換數(shù)據(jù)格式;
      ④返回結(jié)果給應(yīng)用程序;
      ⑤將運(yùn)行錯(cuò)誤格式化為標(biāo)準(zhǔn)代碼返回;
      ⑥在需要時(shí)說(shuō)明和處理光標(biāo)。
      以上這些功能都是對(duì)應(yīng)用程序?qū)庸δ艿木唧w實(shí)現(xiàn)。驅(qū)動(dòng)程序的配置方式

      【全面了解ODBC技術(shù)】相關(guān)文章:

      全面領(lǐng)會(huì) ODBC技巧03-10

      網(wǎng)絡(luò)電話技術(shù)簡(jiǎn)單全面介紹03-12

      略談隧道洞內(nèi)洞外的全面施工技術(shù)論文11-18

      運(yùn)用價(jià)值工程全面推動(dòng)建筑業(yè)技術(shù)與經(jīng)濟(jì)工作03-24

      全面預(yù)算發(fā)展趨勢(shì)-戰(zhàn)略導(dǎo)向全面預(yù)算12-07

      Delphi 5 數(shù)據(jù)庫(kù)應(yīng)用中ODBC數(shù)據(jù)源的自動(dòng)管理03-18

      談企業(yè)全面預(yù)算管理03-18

      舞劇創(chuàng)作需要全面反思03-18

      主站蜘蛛池模板: 汉中市| 亚洲AV秘 无码一区二区久久| 亚洲黄色性生活一级片| 视频| 中文字幕人妻系列一区尤物视频 | 男女日比免费观看视频| 亚洲欧洲综合有码无码| 纳雍县| 中文字幕麻豆一区二区| 亚洲AV专区一专区二专区三| 青青草视频在线观看视频网站 | 丁香六月久久| 青青青草国产熟女大香蕉| 丰台区| 邹城市| 精河县| 久久精品久久精品亚洲国产av| 国语精品视频在线观看不卡| 国产主播精品一区二区| 国产欧美日韩图片一区二区| 国产亚洲成人精品一区| 兴城市| 翁牛特旗| 制服丝袜人妻中出第一页| 亚洲AV成人无码天堂| 最新国产成人综合在线观看| 青青草国产成人在线视频| 国产一区二区三区亚洲天堂| 国产成人一区二区三区视频免费蜜 | 亚洲色婷婷综合开心网| 欧美成人精品福利在线视频| 国产激情视频在线| 一区二区三区熟女人妻| 日本一区二区三区高清日韩| 91免费国产| 日韩精品在线观看首页| 青草青草伊人精品视频| 国产精品日本天堂| 亚洲无码激情视频在线观看| 精品国产一区二区三区香蕉| 国产主播一区二区在线观看|