simple data 安装和使用记录

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之基础篇:

http://www.cnblogs.com/hj4444/p/3974046.html

oracle odp.net 32位/64位版本的问题:http://www.cnblogs.com/yjmyzz/archive/2011/04/19/2020793.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

时间: 2024-10-13 12:23:13

simple data 安装和使用记录的相关文章

在Linux(CentOS)上安装MySql详细记录

前记:  毕业两年了,前两天换了份工作,由以前的传统行业跳到了互联网行业.之前的公司一直在用WinServer2003+Tomcat+SqlServer/Oracle这套部署环境.对于Linux+Tomcat(或其他容器)+Mysql这套之前没用用过.所以利用这周末的我在阿里云上49元搞了个linux(centos 64位)的服务器. 刚开始先装了JDK1.6,安装了Tomcat6.0.这过程中没有遇到太大的问题, 小问题也google一下就解决了.而周六晚上开始安装Mysql,于是到今天下午为

学习simple.data之高级篇

一.调用存储过程 1.不带参数 CREATE PROCEDURE ProcedureWithoutParams AS SELECT * FROM ORDER; 调用db.ProcedureWithoutParams(); 2.带参数 CREATE PROCEDURE ProcedureWithoutParams @ORDERCODE VARCHAR(MAX) AS SELECT * FROM ORDER WHERE ORDERCODE=@ORDERCODE; 调用db.ProcedureWith

mongodb 3.2.5安装过程详细记录

2016-10-19    mongodb 3.2.5安装 1 准备安装介质 安装介质下载: mongodb的安装方式,我通常使用二进制包的方式,内网不能配置连接外网的yum源: 官方建议的mongodb下载地址为:   Downloads.mongodb.org 但实际上,这个地址,很难找到下载表,正常下载,通常可以用下面的下载地址选择下载: 我这里下载的是: 3.2.5 版本对应的 mongodb-linux-x86_64-rhel62-3.2.5-20-g07e21d8.tgz 如果将整个

用于Simple.Data的ASP.NET Identity Provider

今天推举的这篇文章,本意不是要推举文章的内容,而是据此介绍一下Simple.Data这个很有意思的类ORM工具. 现在大家在.NET开发中如果需要进行数据访问,那么基本都会使用一些ORM工具,比如微软提供的Entity Framework(现在是6.x版本,马上要发布7.0版本)或者NHibernate.当然可能有些开发人员会使用一些更轻量级的ORM工具,或者一些诸如SqlHelper的非ORM工具.在轻量级ORM工具中,比较有代表性的就是Dapper和Simple.Data. 而Simple.

内存数据库Timesten安装过程全记录

[[email protected] timesten]# su - tt [[email protected] ~]$ cd /timesten/linux8664/ [[email protected] linux8664]$ ls 3rdparty  doc  install.pl  LINUX8664  README.html  setup.sh  uninst.sh [[email protected] linux8664]$ ./setup.sh WARNING: You are r

学习simple.data之基础篇

simple.data是一个轻量级的.动态的数据访问组件,支持.net4.0. 1.必须条件和依赖性: v4.0 or greater of the .NET framework, or v2.10 or greater of the Mono framework 项目中引用 Simple.Data.Core A Simple.Data adaptor A Simple.Data provider 2.PM> Install-Package Simple.Data.Oracle Simple.D

Simple Data

Git地址:https://github.com/markrendle/Simple.Data 来源:http://bbs.nfinal.com/read-13

Centos7.3 Docker安装部署学习记录1

一.Docker基础环境的安装 1. 环境说明 本机采用操作系统如下: CentOS-7.3-X86-64,内核3.10 x64位,docker 1.12.x版本.   建议采用CentOS7版本或ubuntu版本,本文采用CentOS7即CentOS-7-x86_64-DVD-1611.iso版本最小化安装.    Docker可以在虚拟机环境中运行进行使用测试.本文出自:http://koumm.blog.51cto.com/ 2. 主机网络 1)关闭firewalld防火墙和SELinux

我的Ubuntu安装使用openCV记录

博主QQ:1356438802 本来我想在ubuntu虚拟机上做openCV研究的,因为在Ubuntu做出来的程序更方便移植到安卓(这是我的终极目标),而且我只有一台电脑,没法装Ubuntu物理机.但是后来发现虚拟机跑起来有点卡,影响心情.后来还是换成先在windows上面搞吧,所以就有了我另外的那些windows安装openCV文章. 以下是我的安装使用记录 20160123 1. 准备: openCV for unix 2.4.10 虚拟机ubuntu 12.04LTS 64bit a. 修