日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

用.Net開發DB2數據庫應用程序(1)

瀏覽:16日期:2023-11-10 13:17:03
簡介在.NET應用軟件開發人員看來,使用DB2與使用其它任何其它關系數據庫沒有區別。人們可以看到無數使用SQL Server以及甲骨文公司產品執行數據庫任務的例子,但關于使用包括.NET在內的微軟公司技術訪問DB2數據庫的文檔就遠沒有那么多了。目前,開發人員可以使用不同的訪問技術通過編程的方式將.NET客戶端連接到DB2上,這些代碼從根本上來說是基本相同的,但仍然存在一些我們需要考慮的有趣的限制。DB2架構慨覽DB2數據庫引擎的基本元素是數據庫對象、系統目錄、目錄和配置文件,所有的數據存取都通過SQL界面進行。我們可以只將DB2 Univeral Database(UDB)作為數據庫服務器運行,這不要求使用其它的產品,但對于遠程的客戶端而言,我們還需要其它一些產品。用.Net開發DB2數據庫應用程序(1)(圖pict01)連接到DB2的方式決定了我們能夠完成的任務。有三種技術可以從.NET連接到DB2:1、使用OleDb .NET Managed Provider。假如運行的是DB2 V7或更低的版本以及COM對象是調用者時,微軟和IBM二家公司都建議使用OleDb數據提供者訪問大多數DB2數據。在.NET Framework中,OleDb提供商是通過COM InterOp表現出來的,并使用可用于ADO開發的驅動程序。2、使用ODBC .NET Managed Provider。這種方式提供了對本地ODBC驅動程序的訪問,與OLEDb .NET Data Provider提供對本地OLEDb提供者訪問的方式相同。ODBC .NET Data Provider是.NET Framework的一個附加組件,它能夠與所有兼容的ODBC驅動程序配合使用。3、使用IBM DB2 .NET Provider(β):這種方式提供了對將ADO.NET連接到DB2 V8.1的支持。DB2 .NET Data Provider是Visual Studio .NET Framework的一個內插式附件,它能夠訪問在運行在不同硬件和操作系統平臺上的DB•數據庫服務器。目前,它仍然處于β測試階段,但IBM公司很快會發布正式產品。DB2 .Net Data Provider能夠將使用ADO.NET開發的應用程序連接到下面的DB2數據庫服務器上: 1234下一頁 •運行在Windows、UNIX和Linux平臺上的DB2 Universal Database Version 8.1。•運行在z/OS、OS/390 V6.1以及使用DB2 Connect V8.1組件的更高版本的操作系統上的DB2 Universal Database。不同的連接字符串顯示出不同情況下的語法差別:OleDb連接字符串:Provider=IBMDADB2.1;User ID=db2admin;Password=db2admin;Data Source=SAMPLEODBC連接字符串:DSN=DB2V8;UID=db2admin;PWD=db2adminBM Managed Provider連接字符串:Database=SAMPLE;User ID=db2admin;Password=db2admin;Server=IREK代碼級訪問的比較在開發DB2數據訪問代碼時,大多數的操作在很大程度上與訪問其它數據庫相同。下面我們對連接技術的一些代碼進行比較:在下面的每個代碼片斷中,我們將展示一些數據庫訪問和數據治理的技巧,請讀者注重每種技術的哪些步驟相同。我們首先創建連接對象,再創建一個命令對象。在這個簡單的例子中,我們只訪問這一特定數據庫表中指定行、列中的一個標量值。最后,我們執行該命令的ExecuteScalar()方法,返回該整數。使用Ole Db技術private OleDbConnection cn = new OleDbConnection(connectionString); OleDbCommand cmd = new OleDbCommand("SELECT COUNT(*) FROM STAFF", cn); int rc = Convert.ToInt32(cmd.ExecuteScalar());使用ODBCprivate OdbcConnection cn = new OdbcConnection(connectionString);OdbcCommand cmd = new OdbcCommand("SELECT COUNT(*) FROM STAFF", cn);int rc = Convert.ToInt32(cmd.ExecuteScalar());使用IBM的Managed Providerprivate DB2Connection cn = new DB2Connection(connectionString); 上一頁1234下一頁 DB2Command cmd = new DB2Command("SELECT COUNT(*) FROM STAFF", cn);int rc = Convert.ToInt32(cmd.ExecuteScalar());功能的比較根據選擇的訪問技術和使用的數據庫版本,我們可以使用不同的功能。另外,根據需要完成的工作,我們還需要選擇連接策略。為了使讀者能夠更好的選擇連接技術,我整理出了一個能夠在決策中使用的路線圖。在路線圖中,我找出了一些對于大多數以數據庫為中心的軟件開發項目中通用的功能。在下面的圖表中,我對自己的心得進行了整理。我根據是否答應完成特定的數據庫任務對三種訪問技術中的每一種都進行了評估,評估的數據庫任務有:•Pass-thru SQL━━這一提供者是否支持通過動態開發的SQL語句形成的傳遞?•簡單的存儲過程━━這一提供者支持包括返回結果在內的調用基本的存儲過程嗎?•In、Out、InOut參數━━這一提供者支持調用存儲過程和利用參數傳遞變量數據嗎?•日期和貨幣━━這一提供者支持由特定廠商提供、可能造成問題的數據類型嗎?•LOBs━━這一提供者支持大對象數據類型的處理嗎?(圖pict02)根據使用的連接技術,我們能夠完成不同類型的任務,因為每種提供者都有自己可以完成的工作。有一些問題是我們值得注重的。例如,ODBC不支持DB2的存儲過程。因此,假如開發的應用軟件非常依靠于存儲過程,我們在選擇訪問技術時就不能考慮ODBC,而應當考慮OleDb或Managed Provider。OleDb不支持LOB數據類型,假如要存取LOB類型的數據(例如JPEG文件),我們可以使用ODBC或Managed Provider。目前,Managed Provider不能在DB2 V7或以前版本上運行,除非在應用程序和基于主機的DB2系統之間運行著DB2 Connect V8。 上一頁1234下一頁 有趣的是,在使用存儲過程的參數時,DB2 V7和OleDb有一個非常聞名的bug。我們能夠從存儲過程中返回數據,但在OleDb+DB2 V7平臺上,我們不能在應用程序與存儲過程之間傳遞參數。性能比較為了衡量提供者的性能和向讀者提供指導,我們將定義一個有效的測試腳本,并對各種提供者的關健性能進行測試。為了比較各種連接技術的性能,我們開發了一些簡單的Web網頁,一個網頁面向執行完全相同功能的測試,這將使我們把握分析不同連接技術情況下輸出的控制數據。(圖pict03)假如嚴格地從性能的角度來看,我們發現,Managed Provider在訪問DB2數據庫時的性能最高。在這一簡單的測試中,有二個重要的數字值得關注:每秒鐘的請求(RPS)能夠使我們感受到訪問的規模,OleDb和ODBC在這方面的表現基本相似,但Managed Provider的表現要好一些(大約高10%左右);收到最后一字節的時間(TTLB)是從終端用戶的角度看到的響應時間,在這一方面,Managed Provider的性能再次比OleDb和ODBC高出10%左右。最值得注重的是,盡管提供的功能不同,但OleDb和ODBC在有負荷的情況下的性能基本相同。IBM公司的Managed Provider的性能最好,而且提供了在訪問DB2 V8時最可靠的功能。但是,假如沒有DB2 Connect作中間體,它不支持DB2 V7以及更低的版本。結論對于應用軟件開發人員而言,使用DB2作后端與使用其它通過ADO或ADO.NET訪問的關系數據庫一樣簡單。ADO.NET為我們完成了所有抽象工作。在選擇DB2還是其它數據庫時,盡管存在架構方面的考慮,但作為開發人員,我們的工作應當是可猜測和可治理的。 上一頁1234
標簽: DB2 數據庫
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久精品观看| 国产日产一区| 美女国产一区| 欧美激情一区| 日韩精品国产欧美| 激情久久五月| 九九久久国产| 国产精品一区二区三区美女 | 黄色在线网站噜噜噜| 日韩中文欧美在线| 中文字幕在线高清| 福利视频一区| 久久精品国产成人一区二区三区| 亚洲乱码视频| 一区二区电影在线观看| 99xxxx成人网| 蜜臀a∨国产成人精品| 亚洲欧洲一区二区天堂久久| 精品国产乱码久久久久久1区2匹| 国产韩日影视精品| 91精品婷婷色在线观看| 婷婷丁香综合| 免费欧美日韩| 亚洲精品乱码| 蜜臀av一区二区在线免费观看 | 日韩一区二区三区免费播放| 激情视频网站在线播放色| 97久久亚洲| 久久电影tv| 国产一区二区三区四区大秀| 国产一区二区三区黄网站 | 女同性一区二区三区人了人一| 色婷婷久久久| 亚洲男女自偷自拍| 亚洲成人三区| 蜜桃一区二区三区在线| 亚洲免费福利一区| 欧美片第1页综合| 成人在线视频中文字幕| 99热国内精品| 日韩中文字幕| 另类专区亚洲| 免费在线欧美视频| 嫩呦国产一区二区三区av| 欧美天堂视频| 亚洲人成毛片在线播放女女| 免费视频一区二区三区在线观看 | 红桃视频亚洲| 国产精品久久亚洲不卡| 日韩欧美精品一区| 午夜久久av | 欧美性感美女一区二区| 三级亚洲高清视频| 国产精品久久久久久av公交车| 精品国产18久久久久久二百| 日韩精品欧美激情一区二区| 日韩av不卡在线观看| 欧美日韩精品一本二本三本 | 精品深夜福利视频| 天使萌一区二区三区免费观看| 久久影院资源站| 性欧美精品高清| 亚洲va中文在线播放免费| 欧美影院精品| 日韩天堂av| 中文字幕在线看片| 日韩黄色av| 日韩欧美综合| 日本午夜精品久久久久| 极品裸体白嫩激情啪啪国产精品| 国产精品777777在线播放| 蜜臀精品一区二区三区在线观看| 日韩免费小视频| 国产一区丝袜| 精品国产亚洲一区二区三区大结局| 亚洲三级网站| 久久xxxx| 蜜臀久久99精品久久久久宅男| 亚洲成人免费| 国产精品嫩草99av在线| jiujiure精品视频播放| 四虎4545www国产精品| 精品国产成人| 欧美一区成人| 91精品国产自产观看在线| 日韩精品久久久久久久软件91| 国产精品毛片一区二区三区| 亚洲精品国产偷自在线观看| 婷婷激情久久| 免费在线看一区| 97久久精品| 国产日韩亚洲| 国产精品多人| 波多野结衣久久精品| 成人福利视频| 黄色在线网站噜噜噜| 国产精品99视频| 国产一区三区在线播放| 荡女精品导航| 色老板在线视频一区二区| 久久国产亚洲| 日韩在线a电影| 欧美一区精品| 欧美日韩视频免费观看| 亚州av乱码久久精品蜜桃| 视频一区在线视频| 精品国产精品国产偷麻豆| 中文av在线全新| 国产模特精品视频久久久久| 日韩激情啪啪| 日本高清不卡一区二区三区视频 | 喷白浆一区二区| 日韩欧美在线精品| 精品日产乱码久久久久久仙踪林| 日韩av首页| 国产日韩三级| 女同性一区二区三区人了人一| 四虎精品一区二区免费| 黄毛片在线观看| 日韩专区在线视频| а√天堂8资源中文在线| 高清一区二区三区| 日韩av福利| 欧美日韩一区二区高清| 美女网站视频一区| 国产欧美日韩视频在线 | 丝袜美腿高跟呻吟高潮一区| 国产精品成人a在线观看| 亚洲精品美女91| 亚洲经典在线| 日韩国产欧美| 国产精品日本一区二区不卡视频 | 亚洲不卡系列| 精品一区二区男人吃奶| 日本欧美韩国一区三区| 999在线观看精品免费不卡网站| 精品久久久网| 国产精品白丝一区二区三区| 日韩一区二区久久| а√天堂8资源中文在线| 欧美成a人片免费观看久久五月天| 中文字幕亚洲影视| 久久在线免费| 久久久五月天| 999国产精品永久免费视频app| 国产一区二区三区四区五区 | 免费的成人av| 欧美专区18| 9色国产精品| 亚洲欧美日韩国产一区| 日韩国产高清在线| 91精品二区| 亚洲精品2区| 91高清一区| 亚洲开心激情| 国产欧美69| 国产福利片在线观看| 欧美成人a交片免费看| 久久在线视频免费观看| 欧美另类专区| 免费在线观看日韩欧美| 青青草国产成人99久久| 国产福利资源一区| 精品国产黄a∨片高清在线| 国产粉嫩在线观看| 亚洲一级影院| 亚洲精品激情| 国产欧美自拍一区| 色婷婷综合网| 美女精品在线| 欧美日韩三区| 亚洲另类av| 国产精品极品在线观看| 日韩精品欧美| 天堂久久av| 91成人精品在线| 超碰超碰人人人人精品| 久久av一区二区三区| 欧美亚洲tv| 亚洲成人一区在线观看| 亚洲精品日韩久久| 国产精品毛片久久| 久久亚洲电影| 国产精品视频一区视频二区| 国产一区调教| 蜜臀av性久久久久蜜臀aⅴ流畅 | 午夜国产精品视频免费体验区| 日韩精品第二页| 91看片一区| www.九色在线| 久久免费影院| 久久免费福利| 欧美日韩中出| 国产精品a级| 久久字幕精品一区| 国产乱码午夜在线视频| 91亚洲自偷观看高清| 樱桃视频成人在线观看| 91精品国产乱码久久久久久久| 激情国产在线|