您的位置:首页 > 其它

simple data 安装和使用记录

2015-11-17 10:34 309 查看

simple data 安装和使用记录

simple.data是一个轻量级的、动态的数据访问组件,支持.net4.0。

simple.data支持以下数据库:

SQL Server 2005 and later

SQL Server Compact Edition 4.0

oracle

vistadb

mysql 4.0 and later

sqlite 3.0 and later

PostgreSQL

sqlanywhere

informix

Microsoft Access 2000, 2003, and 2007

本文记录了使用simple.data连接oracle数据库的过程和遇到的问题,经过一些简单的测试,总结了一些simple.data的优缺点。欢迎各位大神评论指教!

1、开发环境

操作系统:Windows7专业版 64位

开发工具:Microsoft Visual Studio 2012 32位

数据库:oracle 11g

2、添加simple.data组件

1)创建项目:首先创建一个控制台应用程序项目,命名为SimpleDateOracleTest,框架只要是.net4.0以上框架就行。

2)添加Oracle数据库的Simple.Data组件:在这个项目上点右键,选择‘管理NuGet程序包’,在弹出的对话框中,搜索Simple.Data.Oracle关键字,然后在搜索结果列表中选择Simple.Data.Oracle,单击‘安装’按钮,安装完成后,Simple.Data.Oracle的程序集就被引用到项目中了;如下图,其中simple.data.oracle依赖于simple.data.ado,simple.data.ado依赖于simple.data。



如果你对Simple.Data很感兴趣也可以下载源码进行研究:

Simple.Data.Oracle下载地址:https://github.com/flq/Simple.Data.Oracle

Simple.Data下载地址:https://github.com/markrendle/Simple.Data

3)添加Oracle数据库的ADO Provider:在项目中引用Oracle.DataAccess.dll文件,也可以应版本的ODAC,需注意Oracle.DataAccess.dll的版本要和你访问的数据库的版本一致。可以在Oracle数据库所在计算机的OracleHome\odp.net\bin\4\中找到对应版本的Oracle.DataAccess.dll,也可以到Oracle官网上下载对应版本的ODAC进行安装,下载地址:http://www.oracle.com/technetwork/database/windows/downloads/index.html

引用结果如下图:



3、测试

1)编写简单的例子测试是否能够成功连接数据库:代码如下



变量connStr为连接字符串名称;"Oracle.DataAccess.Client"为Oracle数据库的ADO Provider名称;运行程序,结果如下图所示:



2)测试是否能够成功进行数据操作:添加数据库实体类,用来保存数据库查询出来的数据



修改第一步的代码如下



运行程序结果如下图,由图中结果可知,插入数据返回结果为插入的记录内容,修改数据和删除数据返回受影响记录行数。



3)执行速度测试:分别使用SimpleDateOracle,OracleConnection,EF连接同一数据库(这里主要讲SimpleDateOracle,所以使用OracleConnection,EF测试的代码就不提供了),对科室表进行查询(根据主键获取一条数据)和综合(插入一条记录,查询i条记录,删除查询出来的数据)测试,测试结果如下图



4、遇到的问题

1)数据库连接时出现错误:未能加载文件或程序集“Oracle.DataAccess, Version=4.112.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。

原因:本机没有安装4.112.2.0版本的Oracle.DataAccess,或项目中引用的Oracle.DataAccess.dll不是4.112.2.0版本。

解决方法:方法一:到Oracle官网上下载对应版本的ODAC进行安装,下载地址:http://www.oracle.com/technetwork/database/windows/downloads/index.html

本例需找到ODAC112021Xcopy_x64.zip进行安装。安装后可进入vs.net命名行窗口,输入gacutil.exe /l Oracle.DataAccess,查看本机GAC中所有Oracle.DataAccess程序集,确保本机有安装对应版本的Oracle.DataAccess。如下图



方法二:将Oracle数据库所在计算机OracleHome\odp.net\bin\4\Oracle.DataAccess.dll拷贝到项目中,添加引用。

2)数据库连接时出现错误:发生一个或多个错误;内部错误:ORA-12154: TNS:could not resolve the connect identifier specified

原因:数据库连接字符串错误。

解决方法:检查数据库连接字符串是否正确。

3)在服务器上的运行数据查询时出现错误:关于未能加载文件或程序集“Oracle.DataAccess, Version=4.112.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342”或它的某一个依赖项。试图加载格式不正确的程序的解决方案

原因:32位/64位版本问题

解决方法:设置项目生成目标平台为Any CPU如图:



4)查询数据时出现错误:Table 'MAPP1.cw_khxx' not found, or insufficient permissions.

原因:所访问的表不是该用户的表,在SimpleDateOracle源码中可以看到其底层获取用户表的语句如下

select object_name, object_type

from user_objects

where object_type in ('VIEW','TABLE')

所以,在PLSql中执行该语句,找不到的表是不能进行操作的。

5、优缺点

1)优点:超轻量级,支持多种数据库,代码编写简单方便

2)缺点:无法进行多用户表操作,需要对数据库表结构比较了解

6、参考链接

学习simple.data之基础篇:

/content/4421318.html

oracle odp.net 32位/64位版本的问题:/article/4607140.html

http://www.xuebuyuan.com/167621.html

ODAC 64位下载地址:

http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html

Simple.Data.Oracle源码下载地址:https://github.com/flq/Simple.Data.Oracle

Simple.Data源码下载地址:https://github.com/markrendle/Simple.Data
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: