VSM:Oracle Objects for OLE(OO4O)是设计作为ADO的替代的,它可以做JDBC所做的一切。OLE DB和ADO.NET的作用是OO4O所有功能的一部分。OLE DB不支持Oracle 8中引进的对象数据类型。OO4O怎样呢?
Demarest:OO4O支持对象数据类型。而且我们认为ADO.NET也支持对象数据类型。OLE DB不支持,是因为它是在旧的规范上编写的。ADO从来不会运用另外的接口。它是封闭的,不像Microsoft设计的那样可以扩展。这就是我们为什么开发ODP.NET的原因。 ADO.NET不能访问Oracle中的所有那些更高级别的功能。
VSM:并不是许多开发人员都以多种方式运用OO4O,但他们将它用于了XML功能。你们的.NET支持也具有OO4O的所有功能吗?
Demarest:我们的许多用户都选择OO4O而不是OLE DB, 是因为它的质量、可扩张性和性能,以及我谈到的其它功能,如高级列队、处理Oracle对象类型和新的XML数据库性能。OO4O为Oracle环境被最优化了,而Microsoft提供的功能在本质上更普通。ADO.NET规范给了我们机会使我们可以将我们自己的功能提供给Windows开发人员。这就是我们的.NET支持。我们的方向是提供一个全面的功能访问。所以对你这个问题的回答是肯定的。我们将根据我们用户的需要支持.NET。
VSM:在.NET中,能够得到在Java中同样级别的XML支持吗?
Demarest:我们预备提供我们的XML DB。那是我们的本地的XML数据库性能,是为Oracle 9i版本2而公布的。现在它还是beta版:在一年内会发布正式版本。最重要的技术想法就是你总是可以用Oracle做标准的调用。VS开发人员总有方法可以得到我们的XML数据库,虽然它需要C或C++调出。
VSM:你可以在C#中做那些调出吗?
Demarest:对C#我没有把握。它可能可以访问C/C++类库。
VSM:与Java用户相比,Oracle是否认为.NET用户是二等公民?许多VS开发人员似乎都这么想,认为所有的Oracle的东西在编写时都考虑的是Java,并没有考虑到Windows APIs。
Demarest:我不同意这种说法,我认为Microsoft使Java用户成为二等公民。那些.NET提供的服务具有类似的功能——我们支持它们。J2EE规范更成熟/完整,所以需要支持的更多。.NET一直是我们前进的目标。我们需要融合.NET的一些技术,以使我们的产品更有说服力。显然Microsoft有特权并可以完全地、直接地使用操作系统开发,而我们不行。但我们通常可以与Microsoft保持步调一致,所以我想我们在资源、白皮书、研讨会和产品发行方面同任何其它公司做的一样好。
Oracle主要是一个技术基础架构公司,用于企业处理。用户想要安全的结构,所以我们不想发行任何东西,直到一切都为生产环境做好了预备。看看在Oracle技术网站上Windows开发中心提供的所有内容吧。我们是很积极主动的。
VSM:在.NET中集成对象数据类型支持是很难的;数据集使这项工作很难完成。你们支持这一点吗?
Demarest:对象数据类型支持当前处于评估期。在.NET中似乎没有快捷的方式来完成这项任务。假如它达到临界质量,我们将支持它。
VSM:BLOB支持有什么好处?Ref Cursors支持呢?你是否可以更新BLOB的一小部分,然后回应你所做的更新?
Demarest:我们在ODP.NET为此提供了全面的支持。
VSM:也支持Unicode吗?
Demarest:是的。它包含在我们所有的版本中,在ODP.NET beta版中也有。
VSM:ODP.NET的性能怎样?
Demarest:相当棒!这总是我们的一个重要的标准。我们希望并期待我们的provider可以胜过ADO和OLE DB。
VSM:在ODP.NET中你们支持COM+事务处理吗?
Demarest:是的——它已经在beta版中了。同Microsoft相比,Oracle在beta版方面更谨慎。我们的大多数beta版产品的质量都同Microsoft已发布的产品的质量是一样的。我们用的方法就是为一个不确定的东西定制一个alpha/beta程序。Microsoft的beta版产品更多是用于行销,而不考虑质量问题。
VSM:Visual Studio是硬编码的,所以唯一可以用于它的数据提供者(data providers)就是SQL Server的SQL client 和OLE DB以及Access,是吗?另外,一个称为Data Direct的独立软件开发商(ISV)已编写了它自己的同等的data provider,你可以安装在Visual Studio中。但它的功能没有Oracle或Microsoft那么多。而且,当然,Data Direct有一个本地的data provider for Oracle。那么,Oracle是否有计划给Visual Studio编写独特的Oracle附件呢?
Demarest:我们正在观望,但目前还没有报告。
VSM:假如你采用Oracle的data provider,把它安装在Visual Studio中,在工具条上显示图标,然后拖拉一个data adapter到设计器表面上,你不会成功。这样不行。你被锁在了IDE外,所以你只能一行行地写代码,是这样吗?
Demarest:这就是另一个我们希望集成到Microsoft VS中来生成ODP.NET代码的原因。我们想通过Microsoft解决这个问题。很可能会成功。Microsoft的人喜欢有一个封闭的环境,而且拥有自己的整个堆栈。所以在这里我不好说。