ado|oracleOracle提供了许多工具帮你从.NET应用程序访问Oracle数据库。
by Lee Thé
George Demarest
大于三分之一的Visual Studio Magazine读者都运用Oracle数据库,剩下的许多人在将来可能也会用。我们来到Oracle公司,看看他们采取了什么措施使得从Visual Studio .NET访问Oracle数据库变得更方便了。VSM的主编Lee Thé采访了George Demarest,他是Oracle的数据库市场部主管。
VSM:Oracle采取了什么措施来帮助Visual Studio .NET开发人员运用Oracle数据库?
Demarest:有Oracle ODBC驱动程序——这是最基本的。然后还有Oracle Provider for OLE DB、Oracle Objects for OLE、以及我们自己内部开发的COM Automation API。API提供了权限来访问可扩展的Oracle功能,包括高级列队、多媒体支持和对象支持。你可以运用APIs通过标准的调出机制(callout mechanisms)来访问COM自动化组件。
Oracle 9i包括Oracle services for MTS;我们还整合了Active Directory,并支持Windows authentication和Windows Very Large Memory(VLM)驱动程序。这很重要,尤其是在32位系统上。我们集成了Windows NT Performance Monitor(性能监控器)。而且,你可以通过Windows服务管理器(Service Manager)来启动和关闭Oracle服务器。我个人最喜欢的是我们有一个failover技术,叫做Oracle Fail Safe。它为failover(故障转移)和failback(故障恢复)提供了一个GUI,甚至可以用于非Oracle数据库。
同其它的操作环境相比,Windows有更独特的操作功能,Oracle为Windows做了大量的定制性的开发,上述这些工具可以反映这一点。我们将用Oracle 9i(Oracle最新的核心数据库产品)重新统治Windows。VSM:对于Oracle来说,Windows NT是个Tier 1平台。.NET也是个Tier 1平台吗?
Demarest:是的。如果它是一个在Windows上运行的服务器环境,我们将支持它。在Oracle,所有的Windows服务器平台在开发中都支持Tier 1。
VSM:Oracle用什么资源来支持Visual Studio开发人员?
Demarest:我们有一个单独的部门,主要负责Windows——一个Windows集成和测试小组。另外,你是否记得去年十月出现了两篇抨击我们的文章,因为我们发布Windows端口比Unix端口晚了?因此,从Oracle 9i版本2开始,我们就同时发布了Windows、Linux、HP和Solaris版本。尤其今年,我可以说,在我们公司,人们对Windows和Linux投入了更大的关注。我们确信,我们在发布其他Tier 1平台的同时,也发布了同等质量和功能的Windows。对于Oracle 9i服务器和数据库来说,Windows是一个参考平台。
VSM:关于对VS开发人员的支持,Oracle的官方立场是什么?
Demarest:我们知道,Visual Studio是个人们广泛运用和部署的工具。我们将通过Oracle Provider for OLE DB继续与Windows环境集成,另外,最近我们还开发了Oracle Provider for .NET (ODP.NET)。现在它是beta版本,你可以从我们的Oracle技术网站http://otn.oracle.com/tech/windows/odpnet/下载它。它可以让我们扩展人们认为不能扩展的ADO.NET。而且它也可以用来更进一步地集成Oracle,包括高级列队和其它功能。
VSM:Oracle data provider for .NET是由Oracle官方支持的,还是仅通过新闻组支持?
Demarest:是由Oracle全面、官方支持的。
VSM:你们的beta版的支持确实很好。开发人员可以购买对它的支持吗?他们可以开始汇报问题吗?
Demarest:是的,是这样的。Windows是一个受欢迎的平台,我们有许多专门技术。
VSM:因此你很喜欢.NET了?
Demarest:我们认为.NET有优点也有缺点。我们喜欢有条理的APIs和方法。另一方面,我们也会在明显的所有权方法上遇到问题。
VSM:你们有没有计划将.NET runtime放到Oracle中?Java VM已经放到Oracle中了。
Demarest:我们认为将一个Java或一个.NET runtime放入数据库就是做接近于数据的处理,如同在存储过程和触发器中一样。我们确实在数据库服务器中有Java环境。但我们回缩了(scale back)这个环境 。我们将它用于Java存储过程和接近数据的编程。但是,我们并不确信在数据库中有runtime是件好事。它会带来安全问题。
而且我们也不确信.NET runtime是完全安全的、稳定的。我们认为,有很多不同的结构可以用来在Oracle数据库中开发存储过程,所以我们采取了再等等看这样的态度。但我们将明确提供各种本地访问。
Oracle Provider for .NET扩展了ADO.NET(ZT)
80酷酷网 80kuku.com