国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > 綜合 > 正文

數(shù)據(jù)訪問(wèn)接口體系及數(shù)據(jù)對(duì)象模型探討--[1]

2024-07-21 02:08:47
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友


數(shù)據(jù)訪問(wèn)接口體系及數(shù)據(jù)對(duì) 

 

數(shù)據(jù)訪問(wèn)接口體系及數(shù)據(jù)對(duì)象模型探討(beat 1.0)

                         [email protected]

 [email protected]

個(gè)人文集:

http://www.csdn.net/develop/author/netauthor/redstar81/

 

 

 

文章索引:

預(yù):概念

序言:回首歷史

一、 數(shù)據(jù)訪問(wèn)接口體系探討

1.       open client/open server

2.       odbc(open database connectivity : 開(kāi)放數(shù)據(jù)庫(kù)連接)

3.       ole db(object link and embedding database)

4.  jdbc(java database connectivity : java數(shù)據(jù)庫(kù)連接)

二、數(shù)據(jù)對(duì)象模型探討(待續(xù))
附錄:美國(guó)著名數(shù)據(jù)庫(kù)產(chǎn)品記事(參考)

           

 

研究數(shù)據(jù)庫(kù)理論是為了設(shè)計(jì)更好的數(shù)據(jù)庫(kù)系統(tǒng)。弄清數(shù)據(jù)訪問(wèn)接口體系及數(shù)據(jù)對(duì)象模型的發(fā)展、特征、相互之間的區(qū)別有助于開(kāi)發(fā)更好的數(shù)據(jù)應(yīng)用系統(tǒng)。

預(yù):概念

 

數(shù)據(jù)庫(kù): 滿足一個(gè)或多個(gè)組織、多個(gè)用戶的信息要求的集成數(shù)據(jù)存儲(chǔ)庫(kù).(定義了一組數(shù)據(jù)庫(kù)要素:集成、共享、存儲(chǔ)、信息)

數(shù)據(jù)庫(kù)管理系統(tǒng)(dbms): 目標(biāo)為處理所有用戶對(duì)數(shù)據(jù)庫(kù)存取要求的軟件系統(tǒng)(它有兩個(gè)主要的部分:數(shù)據(jù)庫(kù)控制子系統(tǒng)和數(shù)據(jù)庫(kù)存儲(chǔ)子系統(tǒng))

數(shù)據(jù)庫(kù)系統(tǒng): 以數(shù)據(jù)庫(kù)應(yīng)用為基礎(chǔ)的軟硬件系統(tǒng)的總和.(主要包含數(shù)據(jù)庫(kù)、dbms、<非dbms軟件>::、<集成數(shù)據(jù)庫(kù)管理軟件>::)

<非dbms軟件>:: = 與dbms協(xié)同工作但是不屬于dbms的功能部件.主要包含:操作系統(tǒng)、程序設(shè)計(jì)語(yǔ)言及相應(yīng)的編譯系統(tǒng)、數(shù)據(jù)通信系統(tǒng)、各種應(yīng)用程序(與數(shù)據(jù)庫(kù)管理系 統(tǒng)交互以服務(wù)于用戶). 

   <集成數(shù)據(jù)管理軟件>:: = 輔助和配合dbms工作的功能部件,一般不獨(dú)立使用,總是與dbms集成, 在dbms的基礎(chǔ)上開(kāi)發(fā)的.譬如自動(dòng)報(bào)表生成程序、數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā) 程序、 數(shù)據(jù)庫(kù)測(cè)試程序、數(shù)據(jù)庫(kù)輔助設(shè) 計(jì)程序、數(shù)據(jù)轉(zhuǎn)換設(shè)施等等.

分布式數(shù)據(jù)庫(kù)系統(tǒng): 數(shù)據(jù)庫(kù)被劃分成邏輯關(guān)聯(lián)而物理地分散于不同場(chǎng)地的數(shù)據(jù)子集,并提供了充分操作這些子集 的數(shù)據(jù)存取能力的數(shù)據(jù)庫(kù)系統(tǒng).

 

序言:回首歷史

 

80年代初, vulcan(dbaseii的前身)成為第一個(gè)在微機(jī)上實(shí)現(xiàn)的數(shù)據(jù)庫(kù)系統(tǒng)而且廣為流行.隨后的著名的xbase家族(dbase系列、foxbase系列、低版本foxpro等) 、paradox、clipper從某種意義上說(shuō)屬于低級(jí)的數(shù)據(jù)庫(kù)系統(tǒng)(從語(yǔ)義上講,此處用數(shù)據(jù)庫(kù)系統(tǒng)來(lái)表達(dá)是合適的.然而從性能、系統(tǒng)的設(shè)計(jì)來(lái)講用數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)描述更合適.那時(shí)的數(shù)據(jù)庫(kù)管理系統(tǒng)更像是為管理大量信息而研發(fā)的"應(yīng)用級(jí)"程序).而oracle、db2等此時(shí)尚沒(méi)有微機(jī)版本.這時(shí)的系統(tǒng)遠(yuǎn)不及現(xiàn)代數(shù)據(jù)庫(kù)系統(tǒng)的復(fù)雜.當(dāng)然這是由系統(tǒng)的目標(biāo)或者說(shuō)是用戶需求決定的.用戶對(duì)數(shù)據(jù)庫(kù)的操作基于xbase及其它一些非標(biāo)準(zhǔn)的各數(shù)據(jù)庫(kù)系統(tǒng)自己的數(shù)據(jù)操縱語(yǔ)言(最初雖然它們亦擁有函數(shù)庫(kù)等程序設(shè)計(jì)語(yǔ)言的特征但它們更像操作命令.直到這些系統(tǒng)提供了編譯或偽編譯能力<注1::>才真正可看作一種語(yǔ)言).

      注1::= 從下面的記事表來(lái)看,關(guān)于編譯的問(wèn)題在各數(shù)據(jù)庫(kù)系統(tǒng)中有不同的表現(xiàn),關(guān)鍵在于它們基于的數(shù)據(jù)庫(kù)交互語(yǔ)言:是否為sql.另一方面在于數(shù)據(jù)庫(kù)系統(tǒng)的定位.個(gè)人認(rèn)為:xbase、paradox、clipper等系列產(chǎn)品一定程度上實(shí)現(xiàn)了分布式但一直都未實(shí)現(xiàn)c/s結(jié)構(gòu)而更多的局限于本地?cái)?shù)據(jù)庫(kù)的使用與oracle、sybase sql server、sybase system、db2、informix等數(shù)據(jù)庫(kù)系統(tǒng)的定位是不同的.它們秉承了先前的設(shè)計(jì)理念,還有更重要的一點(diǎn)是:c/s結(jié)構(gòu)的出現(xiàn)自然導(dǎo)致了較現(xiàn)代(當(dāng)然目前的商業(yè)應(yīng)用開(kāi)發(fā)模式應(yīng)說(shuō)是多層分布式)的數(shù)據(jù)系統(tǒng)開(kāi)發(fā)模式(以當(dāng)時(shí)客戶端開(kāi)發(fā)工具powerbuilder、visual basic、dephil及輔助設(shè)計(jì)軟件產(chǎn)品的出現(xiàn)為見(jiàn)證)同時(shí)dbms的功能明細(xì)而以前的數(shù)據(jù)庫(kù)系統(tǒng)的外圍軟件產(chǎn)品可以在客戶端工作甚至集成于客戶端開(kāi)發(fā)工具之中.以前的終端-服務(wù)器(host系統(tǒng))數(shù)據(jù)庫(kù)系統(tǒng)結(jié)束.可以"篡奪"數(shù)據(jù)服務(wù)器系統(tǒng)諸多能力的客戶端出現(xiàn).這當(dāng)中數(shù)據(jù)系統(tǒng)應(yīng)用程序的出現(xiàn)應(yīng)是關(guān)鍵,它使數(shù)據(jù)的使用、表現(xiàn)、甚至是數(shù)據(jù)庫(kù)的管理等起了巨大的變化.而xbase、paradox等系統(tǒng)自從實(shí)現(xiàn)不同程度的編譯能力更看出它們集本地?cái)?shù)據(jù)庫(kù)管理、設(shè)計(jì)和數(shù)據(jù)系統(tǒng)應(yīng)用程序開(kāi)發(fā)等于一身,它們作為dbms體現(xiàn)的功能并不同實(shí)現(xiàn)c/s體系結(jié)構(gòu)的dbms.還是那句話秉承了先前的設(shè)計(jì)理念.

 

   雖然我們探討的數(shù)據(jù)訪問(wèn)接口體系應(yīng)該是針對(duì)c/s結(jié)構(gòu)和更先進(jìn)的數(shù)據(jù)庫(kù)系統(tǒng)體系結(jié)構(gòu),然而我先前已經(jīng)提到這篇文章的最終目標(biāo)是幫助程序設(shè)計(jì)者設(shè)計(jì)更好的數(shù)據(jù)應(yīng)用系統(tǒng).這樣我們有必要關(guān)注一下早先的數(shù)據(jù)庫(kù)管理系統(tǒng)與其它的語(yǔ)言(匯編,c,cobol,pascal,fortran等)交互的情況.前前后后(92年以前,詳見(jiàn)下面<<美國(guó)著名數(shù)據(jù)庫(kù)產(chǎn)品記事>>),各著名數(shù)據(jù)庫(kù)系統(tǒng)產(chǎn)品根據(jù)自己的結(jié)構(gòu)體系和定位都實(shí)現(xiàn)了sql(當(dāng)中的實(shí)現(xiàn)情況自然各有不同.xbase家族、parodox等增加了sql交互界面且實(shí)現(xiàn)了xbase語(yǔ)言和sql的混合使用.而oracle、sybase、informix等系統(tǒng)把sql根據(jù)各自系統(tǒng)的需要擴(kuò)展形成了自己的數(shù)據(jù)操縱語(yǔ)言)和編譯或偽編譯或預(yù)編譯能力或調(diào)用庫(kù).上面所述的兩種能力的實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)系統(tǒng)和應(yīng)用程序的交互起了很大的影響.但那時(shí)的交互不同于現(xiàn)在程序設(shè)計(jì)者意識(shí)中應(yīng)用程序與數(shù)據(jù)庫(kù)系統(tǒng)的關(guān)系.總體來(lái)說(shuō)那時(shí)數(shù)據(jù)庫(kù)系統(tǒng)與應(yīng)用程序交互可能有幾種情況:一,數(shù)據(jù)庫(kù)管理系統(tǒng)提供訪問(wèn)應(yīng)用程序的途徑以增強(qiáng)數(shù)據(jù)庫(kù)管理系統(tǒng)的功能. 二,應(yīng)用程序利用格式轉(zhuǎn)化后的數(shù)據(jù)庫(kù)文件.當(dāng)然也可以通過(guò)其它的方法訪問(wèn)未經(jīng)轉(zhuǎn)化的數(shù)據(jù)庫(kù)文件. 三,數(shù)據(jù)操縱語(yǔ)言嵌入其它的程序設(shè)計(jì)語(yǔ)言(稱為宿主語(yǔ)言).其實(shí)早在1969年實(shí)現(xiàn)的ibm-ims數(shù)據(jù)庫(kù)系統(tǒng)(數(shù)據(jù)操縱語(yǔ)言為dl/i)中已經(jīng)具有這種功能.自然系統(tǒng)需要提供預(yù)編譯接口. 四,在應(yīng)用程序中使用數(shù)據(jù)庫(kù)系統(tǒng)提供的調(diào)用庫(kù)(如oracle的oci library,值得一提的是oci library在最新的接口體系中還使用著).再?gòu)默F(xiàn)在數(shù)據(jù)系統(tǒng)程序設(shè)計(jì)者的角度看,在你的程序中可以利用的無(wú)非是數(shù)據(jù)庫(kù)文件.在利用數(shù)據(jù)庫(kù)文件的兩條途徑中,一條是不需要你掌握數(shù)據(jù)庫(kù)文件格式結(jié)構(gòu)的.自然,上面列出的四種情況是從不同的數(shù)據(jù)庫(kù)系統(tǒng)歸納出來(lái)的.

對(duì)于數(shù)據(jù)庫(kù)系統(tǒng)本身特別對(duì)于數(shù)據(jù)系統(tǒng)程序的設(shè)計(jì)還對(duì)于很多方面,c/s結(jié)構(gòu)提出的意義是影響重大的.因?yàn)樗挂院蟮?世界"不同了.

總體來(lái)說(shuō),c/s結(jié)構(gòu)出現(xiàn)之前,數(shù)據(jù)應(yīng)用相關(guān)的幾乎全部任務(wù)由駐有數(shù)據(jù)庫(kù)管理系統(tǒng)的主機(jī)完成,早期的數(shù)據(jù)表現(xiàn)基本也是在主機(jī)上完成.而且數(shù)據(jù)庫(kù)系統(tǒng)與外界的交互很有限.雖然,分布式、host系統(tǒng)及其它的一些技術(shù)對(duì)上述情況有所改變.

早期,c/s結(jié)構(gòu)的核心思想是任務(wù)分解,體現(xiàn)客戶端請(qǐng)求和服務(wù)器應(yīng)答的計(jì)算模式.它具有多種模式:sc/ss、mc/ss、sc/ms、l c/s,而基本的結(jié)構(gòu)又可構(gòu)成復(fù)雜的結(jié)構(gòu).

下面圖示c/s的基本結(jié)構(gòu).自然c/s結(jié)構(gòu)中,客戶端與服務(wù)器交互,必須起橋梁作用的中間件(數(shù)據(jù)訪問(wèn)接口).而它正是我們的主題-數(shù)據(jù)訪問(wèn)接口(數(shù)據(jù)對(duì)象模型的概念此時(shí)尚未出現(xiàn)).這里有關(guān)中間件和數(shù)據(jù)服務(wù)器體系結(jié)構(gòu)的知識(shí)我們不作擴(kuò)展探討.我們把重點(diǎn)放在為c/s結(jié)構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)服務(wù)的(專用)數(shù)據(jù)庫(kù)中間件上.

    從圖中你可以看到兩種:microsoft的odbc、ibm的drda.其實(shí)著名的還有sybase的open client/open server 數(shù)據(jù)庫(kù)專用中間件.隨著時(shí)間的推移到目前為止常用的還有sun的

jdbc、microsoft的ole-db.下面我們就幾種數(shù)據(jù)訪問(wèn)接口體系及相應(yīng)體系下的數(shù)據(jù)對(duì)象模型(當(dāng)然有的體系在特定時(shí)期尚無(wú)對(duì)象模型)作探討.





 

 




待續(xù):

 



一、 數(shù)據(jù)訪問(wèn)接口體系探討

1.       open client/open server

2.       odbc(open database connectivity : 開(kāi)放數(shù)據(jù)庫(kù)連接)

3.       ole db(object link and embedding database)

4.  jdbc(java database connectivity : java數(shù)據(jù)庫(kù)連接)

二、數(shù)據(jù)對(duì)象模型探討(待續(xù))
附錄:美國(guó)著名數(shù)據(jù)庫(kù)產(chǎn)品記事(參考)

           

 






 

 

 
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 阿坝| 东台市| 广宁县| 伊金霍洛旗| 贵港市| 桦川县| 阿图什市| 衡水市| 抚远县| 常德市| 临泉县| 旺苍县| 古浪县| 托克托县| 桃源县| 龙游县| 周宁县| 全州县| 诸暨市| 杭州市| 河北区| 封丘县| 响水县| 乐山市| 华安县| 怀仁县| 大足县| 嵊泗县| 三门峡市| 武川县| 竹溪县| 甘孜县| 常州市| 大丰市| 赣榆县| 平罗县| 年辖:市辖区| 全南县| 色达县| 肃北| 洞口县|