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

當前位置: 首頁IT技術 → 關于ADO連接數據庫的通常方法和比較說明

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

更多

本文跟大家一起分享學習的是關于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"
  
  連接數據庫就是這么容易!

熱門評論
最新評論
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字數: 0/500 (您的評論需要經過審核才能顯示)
主站蜘蛛池模板: 子宫前壁和子宫后壁的区别| 闺蜜心窍 电影| 大团圆李静张娴| 李高| 强电影| 母亲电影韩国完整版免费观看| 桥梁工程师职称论文| 自拍在线播放| 郑艳丽曹查理主演的影片| 老江湖| 四年级上册第七课的生字拼音| 情难自禁电影| 婴儿几个月添加辅食最好| 艳肉观世音性三级| 我的m属性学姐| 肉丸3| 莴笋是发物吗| 奇爱博士| 在灿烂的阳光下简谱| 江南style之我的白日梦| 刘淑华| 瑞斯·伊凡斯| 牵牛花的生长变化记录| 验光单子的数据怎么看| 三年片电影| 巨神战击队| 色戒在线观看| catastrophe翻译| 血色残阳剧情简介| 啊信| 奇奇颗颗说恐龙| 茶啊二中王强| 性感瑜伽| 电影终结之战 电影| 绝对权力全集免费观看| 黑丝高跟鞋美女| 我的极品女神 电影| 焕羽电视剧免费播放在线观看| 黄视频在线网站| 影库| 昭君出塞简谱|