亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > 文庫 > 正文

OLEDB和ODBC的區別(優缺點)

2020-10-29 21:52:10
字體:
來源:轉載
供稿:網友
ODBC是一種連接數據庫的開放標準。

ODBC(OpenDataBase Connectivity,開放數據庫互連)是微軟公司開放服務結構(WOSA,Windows OpenServices Architecture)中有關數據庫的一個組成部分,它建立了一組規范,并提供了一組對數據庫訪問的標準API(應用程序編程接口)。這些API利用SQL來完成其大部分任務。ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。
它本身就是為了是數據庫的使用者不必考慮使用的是何種數據庫而只需要相同的操作而設計的。

ODBC是Open Database Connect即開放數據庫互連的簡稱,它是由Microsoft 公司于1991 年提出的一個用于訪問數據庫的統一界面標準,是應用程序和數據庫系統之間的中間件。它通過使用相應應用平臺上和所需數據庫對應的驅動程序與應用程序的交互來實現對數據庫的操作,避免了在應用程序中直接調用與數據庫相關的操作,從而提供了數據庫的獨立性。
ODBC 主要由驅動程序和驅動程序管理器組成。驅動程序是一個用以支持ODBC 函數調用的模塊,每個驅動程序對應于相應的數據庫,當應用程序從基于一個數據庫系統移植到另一個時,只需更改應用程序中由ODBC 管理程序設定的與相應數據庫系統對應的別名即可。驅動程序管理器可鏈接到所有ODBC 應用程序中,它負責管理應用程序中ODBC 函數與DLL 中函數的綁定。
ODBC 使用層次的方法來管理數據庫,在數據庫通信結構的每一層,對可能出現依賴數據庫產品自身特性的地方,ODBC 都引入一個公共接口以解決潛在的不一致性,從而很好地解決了基于數據庫系統應用程序的相對獨立性,這也是ODBC 一經推出就獲得巨大成功的重要原因之一。

從結構上分,ODBC 分為單束式和多束式兩類。

1.單束式驅動程序

單束式驅動程序介于應用程序和數據庫之間,像中介驅動程序一樣數據提供一個統一的數據訪問方式。當用戶進行數據庫操作時,應用程序傳遞一個ODBC 函數調用給ODBC 驅動程序管理器,由ODBC API 判斷該調用是由它直接處理并將結果返回還是送交驅動程序執行并將結果返回。由上可見,單束式驅動程序本身是一個數據庫引擎,由它直接可完成對數據庫的操作,盡管該數據庫可能位于網絡的任何地方。

2.多束式驅動程序

多束式驅動程序負責在數據庫引擎和客戶應用程序之間傳送命令和數據,它本身并不執行數據處理操作而用于遠程操作的網絡通信協議的一個界面。前端應用程序提出對數據庫處理的請求,該請求轉給ODBC 驅動程序管理器,驅動程序管理器依據請求的情況,就地完成或傳給多束驅動程序,多束式驅動程序將請求翻譯為特定廠家的數據庫通信接口(如Oracle 的SQLNet)所能理解的形式并交于接口去處理,接口把請求經網絡傳送給服務器上的數據引擎,服務器處理完后把結果發回給數據庫通信接口,數據庫接口將結果傳給多束式ODBC 驅動程序,再由驅動程序將結果傳給應用程序。

ODBC(開放數據庫互連):是Microsoft引進的一種早期數據庫接口技術。它實際上是ADO的前身。早期的數據庫連接是非常困難的. 每個數據庫的格式都不一樣,開發者得對他們所開發的每種數據庫的底層API有深刻的了解. 因此,能處理各種各樣數據庫的通用的API就應運而生了. 也就是現在的ODBC(Open Database Connectivity), ODBC是人們在創建通用API的早期產物. 有許多種數據庫遵從了這種標準,被稱為ODBC兼容的數據庫.

OLEDB(對象鏈接和嵌入數據庫)位于ODBC層與應用程序之間. 在你的ASP頁面里,ADO是位于OLEDB之上的"應用程序". 你的ADO調用先被送到OLEDB,然后再交由ODBC處理. 你可以直接連接到OLEDB層,如果你這么做了,你將看到服務器端游標(recordset的缺省的游標,也是最常用的游標)性能的提升.

參考 http://www.connectionstrings.com/

用odbc連接數據庫:

odbc中提供三種dsn,它們的區別很簡單:用戶dsn只能用于本用戶。系統dsn和文件dsn的區別只在于連接信息的存放位置不同:系統dsn存放在odbc儲存區里,而文件dsn則放在一個文本文件中。
它們的創建方法就不說了。

在asp中使用它們時,寫法如下:

1.sql server:

用系統dsn: connstr="DSN=dsnname; UID=xx; PWD=xxx;DATABASE=dbname"
用文件dsn:connstr="FILEDSN=xx;UID=xx; PWD=xxx;DATABASE=dbname"
還可以用連接字符串(從而不用再建立dsn):
connstr="DRIVER={SQLSERVER};SERVER=servername;UID=xx;PWD=xxx"

2.access:

用系統dsn: connstr="DSN=dsnname"
(或者為:connstr="DSN=dsnname;UID=xx;PWD=xxx")
用文件dsn:connstr="FILEDSN=xx"
還可以用連接字符串(從而不用再建立dsn):
connstr="DRIVER={MicrosoftAccess Driver};DBQ=d:/abc/abc.mdb"

用oledb連接數據庫:

1.sql server:
connstr="PROVIDER=SQLOLEDB;
DATASOURCE=servername;UID=xx;PWD=xxx;DATABASE=dbname"

2.access:
connstr="PROVICER=MICROSOFT.JET.OLEDB.4.0;
DATASOURCE=c:/abc/abc.mdb"

值得注意的是,OLE DB對ODBC的兼容性,允許OLE DB訪問現有的ODBC數據源。其優點很明顯,由于ODBC相對OLE DB來說使用得更為普遍,因此可以獲得的ODBC驅動程序相應地要比OLE DB的要多。這樣不一定要得到OLE DB的驅動程序,就可以立即訪問原有的數據系統。
提供者位于OLE DB層,而驅動程序位于ODBC層。如果想使用一個ODBC數據源,需要使用針對ODBC的OLE DB提供者,它會接著使用相應的ODBC驅動程序。如果不需要使用ODBC數據源,那么可以使用相應的OLE DB提供者,這些通常稱為本地提供者(native provider)。
可以清楚地看出使用ODBC提供者意味著需要一個額外的層。因此,當訪問相同的數據時,針對ODBC的OLE DB提供者可能會比本地的OLEDB提供者的速度慢一些。

ODBC,OLEDB連接字符串詳解

SQL Server

u ODBC
1. Standard Security:
"Driver={SQLServer};Server=Aron1;Database=pubs;Uid=sa;Pwd=asdasd;"
2. Trusted connection:
"Driver={SQLServer};Server=Aron1;Database=pubs;Trusted_Connection=yes;"
3. Prompt for username and password:
oConn.Properties("Prompt")= adPromptAlways
oConn.Open"Driver={SQL Server};Server=Aron1;DataBase=pubs;"

u OLE DB, OleDbConnection (.NET)

1. Standard Security:
"Provider=sqloledb;DataSource=Aron1;Initial Catalog=pubs;User Id=sa;Password=asdasd;"
2. Trusted Connection:
"Provider=sqloledb;DataSource=Aron1;Initial Catalog=pubs;Integrated Security=SSPI;"
(useserverName/instanceName as Data Source to use an specifik SQLServer instance,only SQLServer2000)
3. Prompt for username and password:
oConn.Provider= "sqloledb"
oConn.Properties("Prompt")= adPromptAlways
oConn.Open"Data Source=Aron1;Initial Catalog=pubs;"
4. Connect via an IP address:
"Provider=sqloledb;DataSource=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=pubs;UserID=sa;Password=asdasd;"
(DBMSSOCN=TCP/IPinstead of Named Pipes, at the end of the Data Source is the port to use (1433is the default))

u SqlConnection (.NET)

1. Standard Security:
"DataSource=Aron1;Initial Catalog=pubs;User Id=sa;Password=asdasd;"
- or -
"Server=Aron1;Database=pubs;UserID=sa;Password=asdasd;Trusted_Connection=False"
(bothconnection strings produces the same result)
2. Trusted Connection:
"DataSource=Aron1;Initial Catalog=pubs;Integrated Security=SSPI;"
- or -
"Server=Aron1;Database=pubs;Trusted_Connection=True;"
(bothconnection strings produces the same result)
(useserverName/instanceName as Data Source to use an specifik SQLServer instance,only SQLServer2000)
3. Connect via an IP address:
"DataSource=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=pubs;UserID=sa;Password=asdasd;"
(DBMSSOCN=TCP/IPinstead of Named Pipes, at the end of the Data Source is the port to use (1433is the default))
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲有声小说3d| 中文字幕亚洲自拍| 欧美激情乱人伦| 国产精品日本精品| 视频一区视频二区国产精品| 亚洲一区二区三区香蕉| 亚洲深夜福利在线| 一区二区av在线| 91在线观看免费观看| 国产成人一区二区在线| 欧美多人爱爱视频网站| 国产美女直播视频一区| 欧美另类精品xxxx孕妇| 97精品久久久中文字幕免费| 日韩电影中文字幕av| 91国产在线精品| 久久久国产在线视频| 一本色道久久88亚洲综合88| 国产精品自拍视频| 亚洲va欧美va在线观看| 欧美国产乱视频| 日韩视频―中文字幕| 91久久精品国产91性色| 亚洲成人av片| 国产精品视频一区二区高潮| 欧美成人手机在线| 久久99精品久久久久久青青91| 91久久久亚洲精品| 中文字幕欧美精品日韩中文字幕| 欧美理论在线观看| 性欧美长视频免费观看不卡| 欧美亚洲视频在线观看| 大量国产精品视频| 日韩av免费网站| 国产精品视频在线观看| 欧美性猛交xxxx免费看久久久| 伊人成人开心激情综合网| 日韩大陆欧美高清视频区| 欧美性理论片在线观看片免费| 亚洲日本成人女熟在线观看| 这里只有精品久久| 午夜精品久久久久久久99热浪潮| 国产精品美女久久久久久免费| 色婷婷久久av| 日韩精品在线免费观看视频| 91午夜理伦私人影院| 亚洲国产小视频在线观看| 国产精品一区二区久久久久| 欧美小视频在线观看| 日韩激情视频在线| 午夜精品久久久久久久久久久久久| 日韩在线观看免费全集电视剧网站| 国产亚洲精品久久久优势| 国产拍精品一二三| 久久久久国产精品一区| 欧美激情高清视频| 久久九九有精品国产23| 日本亚洲欧洲色α| 欧美精品精品精品精品免费| 精品日韩美女的视频高清| 久久久久久久久中文字幕| 欧美日韩国产中文精品字幕自在自线| 亚洲影院在线看| 日韩在线观看高清| 精品视频在线观看日韩| 国产精品免费视频久久久| 欧美中文字幕视频| 国产欧美日韩中文| 久久精品免费电影| 亚洲欧美综合另类中字| 日韩美女激情视频| 久久婷婷国产麻豆91天堂| 国产精品白嫩美女在线观看| 成人黄色网免费| 色偷偷噜噜噜亚洲男人的天堂| 黄色一区二区在线观看| 668精品在线视频| 欧美丰满少妇xxxxx| 欧美日韩电影在线观看| 狠狠色香婷婷久久亚洲精品| 久久天天躁狠狠躁夜夜爽蜜月| 俺去亚洲欧洲欧美日韩| 亚洲一区二区三区视频播放| 久久久久久久久电影| 日韩av影院在线观看| 亚洲专区在线视频| 亚洲精品福利视频| 91精品国产电影| 亚洲精品videossex少妇| 91地址最新发布| 国产精品久久91| 国模极品一区二区三区| 亚洲午夜精品视频| 日韩av在线天堂网| 日韩精品电影网| 国产激情久久久| 国产精品日韩在线| 成人激情视频免费在线| 久久男人av资源网站| 欧美激情免费视频| 69av成年福利视频| 亚洲一区二区久久| 欧美精品激情视频| 国产精品高清免费在线观看| 久久青草福利网站| 日本精品视频在线观看| 久久激情视频久久| 欧美国产日韩一区| 中文字幕亚洲欧美日韩在线不卡| 亚洲精品一区av在线播放| 国产精品亚洲片夜色在线| 8x海外华人永久免费日韩内陆视频| 久久97精品久久久久久久不卡| 亚洲成人国产精品| 亚洲另类欧美自拍| 97涩涩爰在线观看亚洲| 亚洲国产成人久久综合一区| 久久精品99久久久香蕉| 国产精品无码专区在线观看| 欧美精品久久久久久久| 日韩av免费观影| 亚洲激情久久久| 日本亚洲欧美成人| 欧美性猛交xxx| 亚洲国产精品va在线看黑人| 啪一啪鲁一鲁2019在线视频| 日韩美女免费线视频| 亚洲精品一区二区久| 精品美女国产在线| 国产一区二区三区四区福利| 欧美美女操人视频| 亚洲人成在线免费观看| 亚洲福利在线视频| 欧美成人精品一区二区三区| 日本精品久久久久久久| 国产精品毛片a∨一区二区三区|国| 成人黄色片在线| 欧美性猛交xxxx免费看| 亚洲视频日韩精品| 国产在线视频不卡| 日韩电影中文字幕| 亚洲精品免费网站| 日韩少妇与小伙激情| 国产亚洲视频在线观看| 国产精品青草久久久久福利99| 久久久国产精品x99av| 久久人人97超碰精品888| 国产精选久久久久久| 美乳少妇欧美精品| 日韩久久午夜影院| 日韩精品高清在线观看| 亚洲国产福利在线| 欧美在线视频一二三| 国产成人精品999| 中国日韩欧美久久久久久久久| 乱亲女秽乱长久久久| 欧美成人精品一区| 日韩理论片久久| 精品偷拍一区二区三区在线看| 97在线视频免费看| 91久久久久久久一区二区| 97人人模人人爽人人喊中文字| 欧美激情国产精品| 日韩精品免费在线视频观看|