ODP.NET vs MSDP

最近做項目在考慮數據庫層,是用System.Data.OracleClientMSDP),還是Oracle.DataAccess.dllODP.NET)。之前用的是MSDP,可因爲要處理XML文件,所以還用了一部分ODP.NET。現在想全部使用ODP.NET,於是查了點資料。最關鍵是ODP.NET是否穩定。

 

微軟觀點

Microsoft .NET Framework 1.1 Data Provider for OracleMSDP)與Oracle Data Provider for .NETODP.NET9i都很可靠,它們提供類似的功能。用它們中的任何一個開發應用程序,相似之處都大於它們的區別,因爲,這兩個DPData Prodvider)的相應類具有完全相同的命名和實現.NET框架的接口。然而,它們也有很多重要的不同之處:

在某些情況下,ODP.NET中的數據類型更好地映射到本地Oracle數據類型。除了微軟對複雜數據類型提供的方法外,如LOBsTimestampsREF CURSORsOracle XMLODP.NET也提供。如果你使用這些數據類型,儘管用微軟DPData Provider)也可以完成,但ODP.NET使得軟件開發更容易。ODP.NET也提供微軟沒有的功能,如database connectionsinformation messageserror detailarray bindingPL/SQL associative arraystransaction application failover (TAF)、以及globalization

微軟DP被緊密地集成在VS .NET IDE中,這樣,你就可以使用代碼生成嚮導來connectionscommandsdata adapters——ODP.NET目前不能。微軟DP的部署很容易,因爲它是.NET框架1.1或其之後的一部分。微軟DP支持Oracle客戶端8.1.7 或更高版本,而ODP.NET要求Oracle客戶端9.2或更高版本。

   在比較了MSDPODP.NET後,根據應用程序開發和部署的要求,選擇正確的DP。下面超鏈接是微軟提供的這兩個DP的詳細區別。

原文地址:http://msdn.microsoft.com/en-us/library/ms971518

另外,在下面鏈接看到,微軟已經在.NET框架4.0deprecated它的DP。請檢索 Microsoft Kills Its Oracle Data Provider for ADO.NET 你會發現很多引用。

原文地址:http://blogs.msdn.com/b/adonet/archive/2009/06/15/system-data-oracleclient-update.aspx

 

Oracle觀點

那麼Oracle的觀點如何?既然微軟在.NET框架4.0中不贊成System.Data.OracleClient,也就不用多說了。

原文地址:http://www.oracle.com/technetwork/topics/dotnet/index-085703.html
原文地址:http://www.oracle.com/technetwork/topics/dotnet/index-154765.html

 

個人觀點

ODP.NETMSDP都可以使用,但是MS.NET框架4.0,也就是VS 2010,建議開發人員不要使用MSDP,意味着,微軟意識到這種數據庫接口是無法與大型數據庫生產商競爭的,比如Oracle,因爲ODP.NET在處理複雜數據類型時提供了更多的方法等等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章