您好,現(xiàn)在蔡蔡來為大家解答以上的問題。歐洛爾的包包怎么樣,oledb相信很多小伙伴還不知道,現(xiàn)在讓我們一起來看看吧!
1、ODBC(開放數(shù)據(jù)庫互連):是Microsoft引進(jìn)的一種早期數(shù)據(jù)庫接口技術(shù)。
2、它實(shí)際上是ADO的前身。
3、早期的數(shù)據(jù)庫連接是非常困難的. 每個數(shù)據(jù)庫的格式都不一樣,開發(fā)者得對他們所開發(fā)的每種數(shù)據(jù)庫的底層API有深刻的了解. 因此,能處理各種各樣數(shù)據(jù)庫的通用的API就應(yīng)運(yùn)而生了. 也就是現(xiàn)在的ODBC(Open Database Connectivity), ODBC是人們在創(chuàng)建通用API的早期產(chǎn)物. 有許多種數(shù)據(jù)庫遵從了這種標(biāo)準(zhǔn),被稱為ODBC兼容的數(shù)據(jù)庫. OLEDB(對象鏈接和嵌入數(shù)據(jù)庫)位于ODBC層與應(yīng)用程序之間. 在你的ASP頁面里,ADO是位于OLEDB之上的"應(yīng)用程序". 你的ADO調(diào)用先被送到OLEDB,然后再交由ODBC處理. 你可以直接連接到OLEDB層,如果你這么做了,你將看到服務(wù)器端游標(biāo)(recordset的缺省的游標(biāo),也是最常用的游標(biāo))性能的提升. 用odbc連接數(shù)據(jù)庫: odbc中提供三種dsn,它們的區(qū)別很簡單:用戶dsn只能用于本用戶。
4、系統(tǒng)dsn和文件dsn的區(qū)別只在于連接信息的存放位置不同:系統(tǒng)dsn存放在odbc儲存區(qū)里,而文件dsn則放在一個文本文件中。
5、 它們的創(chuàng)建方法就不說了。
6、 在asp中使用它們時,寫法如下: A.sql server: 用系統(tǒng)dsn: connstr="DSN=dsnname; UID=xx; PWD=xxx;DATABASE=dbname"用文件dsn: connstr="FILEDSN=xx;UID=xx; PWD=xxx;DATABASE=dbname"還可以用連接字符串(從而不用再建立dsn): connstr="DRIVER={SQL SERVER};SERVER=servername;UID=xx;PWD=xxx"B.access: 用系統(tǒng)dsn: connstr="DSN=dsnname"(或者為:connstr="DSN=dsnname;UID=xx;PWD=xxx") 用文件dsn: connstr="FILEDSN=xx"還可以用連接字符串(從而不用再建立dsn): connstr="DRIVER={Microsoft Access Driver};DBQ=d:abcabc.mdb"用oledb連接數(shù)據(jù)庫: A.sql server: connstr="PROVIDER=SQLOLEDB; DATA SOURCE=servername;UID=xx;PWD=xxx;DATABASE=dbname"B.access: connstr="PROVICER=MICROSOFT.JET.OLEDB.4.0; DATA SOURCE=c:abcabc.mdb"值得注意的是,OLE DB對ODBC的兼容性,允許OLE DB訪問現(xiàn)有的ODBC數(shù)據(jù)源。
7、其優(yōu)點(diǎn)很明顯,由于ODBC相對OLE DB來說使用得更為普遍,因此可以獲得的ODBC驅(qū)動程序相應(yīng)地要比OLE DB的要多。
8、這樣不一定要得到OLE DB的驅(qū)動程序,就可以立即訪問原有的數(shù)據(jù)系統(tǒng)。
9、提供者位于OLE DB層,而驅(qū)動程序位于ODBC層。
10、如果想使用一個ODBC數(shù)據(jù)源,需要使用針對ODBC的OLE DB提供者,它會接著使用相應(yīng)的ODBC驅(qū)動程序。
11、如果不需要使用ODBC數(shù)據(jù)源,那么可以使用相應(yīng)的OLE DB提供者,這些通常稱為本地提供者(native provider)。
12、可以清楚地看出使用ODBC提供者意味著需要一個額外的層。
13、因此,當(dāng)訪問相同的數(shù)據(jù)時,針對ODBC的OLE DB提供者可能會比本地的OLE DB提供者的速度慢一些。
本文就為大家分享到這里,希望小伙伴們會喜歡。