ODP.NET vs MSDP_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > ODP.NET vs MSDP

ODP.NET vs MSDP

 2013/8/11 21:07:59  IGod接口  博客园  我要评论(0)
  • 摘要:最近做项目在考虑数据库层,是用System.Data.OracleClient(MSDP),还是Oracle.DataAccess.dll(ODP.NET)。之前用的是MSDP,可因为要处理XML文件,所以还用了一部分ODP.NET。现在想全部使用ODP.NET,于是查了点资料。最关键是ODP.NET是否稳定。本文内容Microsoft观点Oracle观点总结参考资料微软观点Microsoft.NETFramework1.1DataProviderforOracle(MSDP
  • 标签:.net net

最近做项目在考虑数据库层,是用 System.Data.OracleClient(MSDP),还是 Oracle.DataAccess.dll(ODP.NET)。之前用的是 MSDP,可因为要处理 XML 文件,所以还用了一部分 ODP.NET。现在想全部使用 ODP.NET,于是查了点资料。最关键是 ODP.NET 是否稳定。

本文内容

    • Microsoft 观点
    • Oracle 观点
    • 总结
    • 参考资料

    微软观点


    Microsoft .NET Framework 1.1 Data Provider for Oracle(MSDP)与 Oracle Data Provider for .NET(ODP.NET)9i 都很可靠,它们提供类似的功能。用它们中的任何一个开发应用程序,相似之处都大于它们的区别,因

    为,这两个 DP(Data Prodvider)的相应类具有完全相同的命名和实现.NET框架的接口。然而,它们也有很多重要的不同之处:

    在某些情况下,ODP.NET 中的数据类型更好地映射到本地 Oracle 数据类型。除了微软对复杂数据类型提供的方法外,如 LOBs、Timestamps、REF CURSORs 和 Oracle XML,ODP.NET 也提供。如果你使用这些数据类型,尽管用微软 DP(Data Provider)也可以完成,但ODP.NET使得软件开发更容易。ODP.NET 也提供微软没有的功能,如 database connections、information messages 和 error detail、array binding、PL/SQL associative arrays、transaction application failover (TAF)、以及 globalization。

    微软 DP 被紧密地集成在 VS .NET IDE 中,这样,你就可以使用代码生成向导来 connections、commands和data adapters——ODP.NET 目前不能。微软DP的部署很容易,因为它是 .NET 框架 1.1 或其之后的一部分。微软 DP 支持 Oracle 客户端 8.1.7 或更高版本,而 ODP.NET 要求 Oracle 客户端 9.2 或更高版本。

    在比较了 MSDP 和 ODP.NET 后,根据应用程序开发和部署的要求,选择正确的 DP。下面超链接是微软提供的这两个 DP 的详细区别。

    参考 http://msdn.microsoft.com/en-us/library/ms971518

    另外,在下面链接看到,微软已经在.NET框架4.0中 deprecated 它的 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.NET 与 MSDP 都可以使用,但是 MS 在.NET框架 4.0,也就是 VS 2010,建议开发人员不要使用 MSDP,意味着,微软意识到这种数据库接口是无法与大型数据库生产商竞争的,比如 Oracle,因为 ODP.NET 在处理复杂数据类型时提供了更多的方法等等。

    参考资料


    • Comparing the Microsoft .NET Framework 1.1 Data Provider for Oracle and the Oracle Data Provider for .NET http://msdn.microsoft.com/zh-cn/library/ms971518.aspx

    • 使用 ODP.NET 访问 Oracle http://www.oracle.com/technetwork/cn/testcontent/o23odp-084525-zhs.html
    • 32-bit Oracle Data Access Components (ODAC) with Oracle Developer Tools for Visual Studio http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html

    上一篇: 苹果连赢三场官司 仍无法取得专利战最终胜 下一篇: 没有下一篇了!
    发表评论
    用户名: 匿名