日韩精品中文字幕一区二区-日韩精品中文字幕一区-日韩精品中文字幕视频-日韩精品在线一区二区三区-第一页在线-第一福利视频

當前位置:首頁文章首頁 IT學院 IT技術

關于ADO連接數據庫的通常方法和比較說明

作者:  來源:  發布時間:2011-6-13 15:14:41  點擊:

本文跟大家一起分享學習的是關于ADO連接數據庫的通常方法和比較說明,希望能給大家帶來幫助或啟發。

ADO連接數據庫通常有三種方法:System DSN Connection,DSN-less Connection 和 OLE DB Connection,這是大家都很熟悉的,它們的使用方法如下:
  
  (注:三種方法的區別在于使用的是哪個關鍵字 - DSN,Driver,Data Source,Provider。UID,PWD 是 ODBC 的標記,User ID,Password 是 OLEDB 的標記。特別指出的是 Data Source 在 ODBC 標記中表示數據源,等同于 DSN,在 OLEDB 標記中表示服務器名或數據庫名。)
  
  'System DSN Connection
  Set cnn = Server.CreateObject("ADODB.Connection")
  cnn.Open "DSN=your_dsn;UID=user_name;PWD=password;"
  '或者用 OLEDB 標記
  cnn.Open "Data Source=your_dsn;User ID=user_name;Password=password;"
  
  'DSN-less Connection
  '以SQL Server為例
  Set cnn = Server.CreateObject("ADODB.Connection")
  cnn.Open "driver={SQL Server};server=server_name;uid=user_name;pwd=pwd;database=pubs"
  
  'OLE DB Connection
  '以SQL Server為例
  Set cnn = Server.CreateObject("ADODB.Connection")
  cnn.Open "provider=sqloledb;data source=server_name;initial catalog=pubs;user id=user_name;password=pwd;"
  
  下面,我們討論一下它們各自的性能。
  
  從本質上說,System DSN 和 DSN-less Connection 都是通過 ODBC 與數據庫進行連接的,它們之間區別不大(事實上也確實如此)。有很多人說 DSN-less Connection 要優于 System DSN Connection,對這一點我不反對。(是不是前后有些矛盾,剛說它們區別不大,現在又......)我曾經分別對這兩種連接測試過,但是失敗了。因為我的測試數據沒有規律,根本說明不了問題(或許用假設檢驗能比較兩者的性能,不過得算死)。于是我得出了結論:沒有結論!后來在網上看到一篇文章 System DSN or DSN-less Connection? 算是有了答案。
  
  結論就是(這是原文):
  
  These tests showed that DSN-less connection were slightly faster than System DSN Connections.The increase in performance was nothing monumental;the greatest performance boost was mere 13% faster with 64 concurrent requests.For one,two,or four concurrent requests,there was virtually no performance improvement.In fact,no noticeable improvement is seen in a DSN-less connection over a System DSN until there are 10 or more concurrent connections.
  
  為什么?因為 System DSN 在連接時要讀注冊表。
  
  現在只有OLE DB沒有說了(打字真累)。OLE DB 比 ODBC 要高效的多。
  
  根本不用測試,這個結論是顯而易見的。如果你還有些懷疑,建議去看看 連接池(Connection Pooling)介紹 那里有 MDAC framework 的圖示,從圖中可以看出,經 ODBC 連接是 ADO-->OLE DB-->ODBC Provider-->ODBC-->driver-->數據庫;經 OLE DB 是 ADO-->OLE DB-->DB Provider-->數據庫。哪個更直接?當然是 OLE DB!
  
  OLE DB 連接數據庫比 ODBC 快,檢索數據比 ODBC 快。所以,我建議每一個在網上安家的人:用OLE DB!
  
  Set cnn = Server.CreateObject("ADODB.Connection")
  'Connection string for SQL Server
  cnn.Open "Provider=SQLOLEDB;Data Source=srvName;Initial Catalog=DBname;User ID=user_id;Password=yourPassword;"
  
  'for Access
  cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db_path"
  
  連接數據庫就是這么容易!

相關軟件

文章評論

軟件按字母排列: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
主站蜘蛛池模板: angie faith| 热血高校 电影| 校园风暴| 林蛟| 刘小虎| 金珠和陈诗雅主演的韩剧| 故乡,别来无恙演员表| 陕西单招真题电子版| 欲网挑情| 24点数学题目100道| 张勇手演过的电影| 出轨的女人电影| 炙热电影| angela white| 腾格尔演的喜剧电影| 免费观看熊出没之狂野大陆| 人蛇大战 电影| 720lu在线观看| 啪啪电影网| 《克莱默夫妇》| 小涛讲电影| 小熙| 薛平贵与王宝钏56集免费观看| 张扬的个人资料简介| 孕妇不能吃什么| 40集电视连续剧人生之路| 打美女光屁股视频网站| 姐妹五| 我在江湖 电影| 凹凸精品视频| 黄录象| 亚纱美| 笔仙2大尺度床戏| 汤唯和梁朝伟拍戏原版视频在线观看| 小飞鱼| 柏欣彤12点以后跳的广场舞| 猎罪图鉴在哪看| 斯科| 心跳影视| 罗志祥小猪视频app全部| 人民日报评墨茶|