下面我对Oracle数据库在.NET平台下的主要几种数据访问方式进行测试。
下面是测试表:
CREATE TABLE CUSTOMERS (
"CUSTOMER_ID" NUMBER NOT NULL ,
"FIRST_NAME" VARCHAR2(255 CHAR) NOT NULL ,
"LAST_NAME" VARCHAR2(255 CHAR) NOT NULL ,
"DOB" DATE NULL ,
"PHONE" VARCHAR2(255 CHAR) NULL ,
PRIMARY KEY ("CUSTOMER_ID")
)
对于.NET下使用Linq to sql ADO.NET Entity 访问Oracle可以下载Devart dotConnect for Oracle安装后就能支持。使用CodeSmith可以生成NHibernate的映射文件和类文件
Devart dotConnect for Oracle 可以到:http://www.devart.com/dotconnect/oracle/下载
下面是测试数据
100条数据
1000条数据
10000条数据
测试数据ADO.NET和ODP.NET没有实例化数据,换句话来说其他三种访问方式性能低的一个很大原因在于操作很多对象。还有只是一个测试,如果运行情况行进行多测测试,其他三种ORM工具具有缓存机制性能应该很好很多。
测试代码下载:/Files/wshark/TestDBAccess.rar