深入數(shù)據(jù)庫通用的連接方式詳解
每個(gè)數(shù)據(jù)的訪問都用自己的通信協(xié)議,包括還有不同的接口調(diào)用,參數(shù)傳遞。在同一個(gè)程序里要使用不同數(shù)據(jù)庫里的信息,按照正常的情況來說,那就要寫不同的數(shù)據(jù)庫連接的方法,就像在程序里寫了多個(gè)精簡版的 數(shù)據(jù)庫 客戶端。這樣的編程方式肯定會讓人不好難受,所以就期望能夠有一種統(tǒng)一的訪問數(shù)據(jù)庫的方式,大家都用這一種方式去連接數(shù)據(jù)庫,那么將減少很多痛苦。
話說微軟是第一個(gè)給大家?guī)硎锕獾娜?,推出了ODBC的概念,從此所有的程序都不用自己寫數(shù)據(jù)庫連接程序了,從此跨入了解放時(shí)代。ODBC是一組基于C語言的API,它能兼容不同的數(shù)據(jù)庫,然后提供統(tǒng)一的訪問接口,這樣就為大家節(jié)省出了YY的時(shí)間。
在ODBC推出后多年,有出了一個(gè)新概念OLE DB。這個(gè)是ODBC的升級版,因?yàn)橐磺卸奸_始面向?qū)ο罅?,所以這個(gè)自然就是以對象方式來實(shí)現(xiàn)的。而且在性能方面也有了一些提高,自此OLE DB成為微軟的新寵。
ODBC、OLE DB都是底層的數(shù)據(jù)庫訪問接口,使用起來不是很方便、容易,大家YY的時(shí)間又被占用的,為此微軟決定再次解放大家、所以就出來了ADO的概念。很顯然這是一個(gè)對象,就是對OLE DB、ODBC的高層封裝,把大家經(jīng)常要做的數(shù)據(jù)庫操作都給直接提供出來,大家的YY時(shí)間再次被解救回來了。
不過在這期間Sun公司也沒閑著,為了更大層次的解救JAVA程序猿們的YY時(shí)間,就單獨(dú)寫了一套專門用于JAVA的數(shù)據(jù)庫訪問接口JDBC,聽名字就知道是山寨創(chuàng)意了。換湯不換藥,唯一的好處就是java代碼里調(diào)用會更舒服,自己家養(yǎng)的東西肯定用起來更順手。
當(dāng)然sun除了山寨創(chuàng)意外,還保留了對ODBC的調(diào)用接口【JDBC-ODBC橋】,以防不時(shí)之需;這樣萬一有一天除了一個(gè)新的東西只有ODBC支持,JDBC不支持。這時(shí)還不至于太有壓力。當(dāng)然ODBC的支持也是目前最廣的,某些非主流的數(shù)據(jù)庫文件的訪問接口也都支持,所以還是留一手的好。
這樣的話,數(shù)據(jù)庫訪問方式就開始明朗了。見下:
這樣看來,用途最廣、最底層的就是ODBC了。基本所有其它的都會可能調(diào)用它,JDBC、OLE DB是一個(gè)等級的;一個(gè)是sun的,一個(gè)是微軟的;ADO不是直接訪問的程序,只是一個(gè)訪問快速通道而已。
注:所有的鏈接方式都需要本機(jī)有相應(yīng)的驅(qū)動,而驅(qū)動是和具體的數(shù)據(jù)庫是對應(yīng)的。這樣就會有3類驅(qū)動類型,每類訪問N種數(shù)據(jù)庫都要N個(gè)驅(qū)動。
- 深入探討:PHP使用數(shù)據(jù)庫永久連接方式操作MySQL的是與非
- ASP數(shù)據(jù)庫連接方式大全
- jdbc連接sqlserver數(shù)據(jù)庫示例
- c#連接mysql數(shù)據(jù)庫的方法
- php中mysql連接和基本操作代碼(快速測試使用,簡單方便)
- PHP同時(shí)連接多個(gè)mysql數(shù)據(jù)庫示例代碼
- PHP連接MySQL的2種方法小結(jié)以及防止亂碼
- sql server 2008數(shù)據(jù)庫連接字符串大全
- python連接mysql調(diào)用存儲過程示例
- python連接mysql并提交mysql事務(wù)示例
- jtds1.1連接sqlserver2000測試示例
- MySQL連接無法解析HOST主機(jī)名的解決方法
- 數(shù)據(jù)庫連接方式匯總
相關(guān)文章
MySql中流程控制函數(shù)/統(tǒng)計(jì)函數(shù)/分組查詢用法解析
這篇文章主要介紹了MySql中流程控制函數(shù)/統(tǒng)計(jì)函數(shù)/分組查詢用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07MySQL大內(nèi)存配置方案 如my-medium.ini、my-huge.ini等
這篇文章主要介紹了MySQL大內(nèi)存配置方案 如my-medium.ini、my-huge.ini等,經(jīng)測試確實(shí)不錯(cuò),訪問mysql速度快了很多2014-08-08MySQL?SQL預(yù)處理(Prepared)的語法實(shí)例與注意事項(xiàng)
所謂預(yù)編譯語句就是將此類SQL語句中的值用占位符替代,可以視為將 SQL語句模板化或者說參數(shù)化,一般稱這類語句叫Prepared Statements,下面這篇文章主要給大家介紹了關(guān)于MySQL?SQL預(yù)處理(Prepared)的相關(guān)資料,需要的朋友可以參考下2022-01-01簡單了解mysql InnoDB MyISAM相關(guān)區(qū)別
這篇文章主要介紹了簡單了解mysql InnoDB MyISAM相關(guān)區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09MySQL Community Server 8.0.11安裝配置方法圖文教程
這篇文章主要為大家詳細(xì) 介紹了MySQL Community Server 8.0.11安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05wampserver下mysql導(dǎo)入數(shù)據(jù)庫的步驟
這篇文章主要介紹了wampserver下mysql導(dǎo)入數(shù)據(jù)庫的步驟,需要的朋友可以參考下2016-08-08安裝使用Percona XtraBackup來備份恢復(fù)MySQL的教程
這篇文章主要介紹了安裝使用Percona XtraBackup來備份恢復(fù)MySQL的教程,文中的示例環(huán)境基于CentOS系統(tǒng),需要的朋友可以參考下2015-12-12MySQL對JSON類型字段數(shù)據(jù)進(jìn)行提取和查詢的實(shí)現(xiàn)
本文主要介紹了MySQL對JSON類型字段數(shù)據(jù)進(jìn)行提取和查詢的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04