先决条件:
服务端程序部署在WindowsServer的服务器,并且没有Oracle客户端;
服务端程序基于.NET4.0,历史原因使用Ibatis.net;
Oracle服务版本12c;
先说结论:
使用Oracle公司开发的类库ODP.net(ODAC),将Oracle.ManagedDataAccess.dll配置到Ibatis.net的provider。
另外一下几篇相关文章推荐给大家,很有帮助,
.NET程序连接Oracle的几种方式:https://blog.csdn.net/adliy_happy/article/details/77880360
ODP.net介绍:https://www.cnblogs.com/xuekai-to-sharp/p/3586071.html
.NET程序无Oracle客户端连接:https://blog.csdn.net/chence19871/article/details/83344138
注册Oracle网站账号,下载链接:https://www.oracle.com/technetwork/cn/database/windows/downloads/index-098472-zhs.html
ODP.NET_Managed_ODAC122cR1.zip体机较小,下载解压后直接复制Oracle.ManagedDataAccess.dll到自己的工程下引用即可,
ODAC122010Xcopy_x64.zip体机较大,解压后可得到Oracle.DataAccess.dll,还需要配合另外几个dll才能使用,本为不做讨论。
<provider name="ManagedDataAccess4" description="Oracle, Oracle.ManagedDataAccess 4.122.18.3" enabled="true" assemblyName="Oracle.ManagedDataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionClass="Oracle.ManagedDataAccess.Client.OracleConnection" commandClass="Oracle.ManagedDataAccess.Client.OracleCommand" parameterClass="Oracle.ManagedDataAccess.Client.OracleParameter" parameterDbTypeClass="Oracle.ManagedDataAccess.Client.OracleDbType" parameterDbTypeProperty="OracleDbType" dataAdapterClass="Oracle.ManagedDataAccess.Client.OracleDataAdapter" commandBuilderClass="Oracle.ManagedDataAccess.Client.OracleCommandBuilder" usePositionalParameters = "false" useParameterPrefixInSql = "true" useParameterPrefixInParameter = "false" parameterPrefix=":" useDeriveParameters="false" />
<provider name="ManagedDataAccess4"/> <dataSource name="SqlMap" connectionString="data source=127.0.0.1/orcl;user id=userId;password=mypws"/> </database>
Ibatis.net无Oracle客户端连接-ODP.net(ODAC)配置
原文:https://www.cnblogs.com/ywzdmu/p/11266792.html