C# 连接Oracle 的几种方法
一、组件介绍
Oracle.ManagedDataAccess.dll
Oracle 官方的托管数据库访问组件,单DLL,即 Oracle.ManagedDataAccess.dll,不安装Oracle客户端,不区分32/64位,直接引用即可。
-
其中包含2个动态库:
- Oracle.ManagedDataAccess.dll>Oracle.ManagedDataAccess.dll 为数据库连接和处理组件,其中包括OracleConnection、OracleCommand、OracleDataAdapter 等常用类 Oracle.ManagedDataAccess.EntityFramework.dll 就不用说了,自然是为EF框架,即实体数据模型提供支持
以上两个动态库可用通过官网下载或者用Nuget中直接下载使用。
二、配置文件定义说明
方法一、无配置文件情况,直接连接DB
实例代码:
string oracleConnStr="Data Source=localhost:1521/orcl;User Id=t1;Password=***;pooling=true";
using(OracleConnection conn=new OracleConnection(oracleConnStr)){
try{
conn.Open();
MessageBox.Show("Connect Successful!");
}caption(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
连接字符串没有特别之处,Data Source=数据源 User Id=用户名 Password=密码 需要注意的是数据源 localhost:1521/orcl pooling=true 是否使用连接池,前面localhost:1521 是服务器和监听端口,后面跟的是 "/",像 Delphi 中 ODAC 是 Server=localhost:1521:orcl
两则略有区别。
2、使用配置文件方式
(1)使用tnsnames.ora文件,此文件需放置在应用程序同目录:(说明:该文件未在在 你的盘符:\Oracel\product\11.2.0\dbhome_1\NETWORK\ADMIN 下)
tnsnames.ora 文件内容如下:
orcl=
(Description=
(Address=(Protocl=tcp)(host=localhost)(port=1521)
(connect_data=
(Server=Dedicated)
(Service_name=orcl)
)
))
(2)使用app.config或web.config配置文件定义别名(无tnsnames.ora文件的情况下)
<oracle.managedaccess.client>
<version number="*">
<dataSources>
<dataSource alias="orcl" descriptor="(Description=(Address=(Protocl=tcp)(host=localhost)(port=1521)(connect_data= (Server=Dedicated)(Service_name=orcl))))">
</dataSource>
</dataSources>
</version>
</oracle.managedaccess.client>
(3)使用TNS_ADMIN目录:
<oracle.managedaccess.client>
<version number="*">
<settings>
<setting name="TNS_ADMIN" value="F:\Oracel\product\11.2.0\dbhome_1\NETWORK\ADMIN"
</settings>
</version>
</oracle.managedaccess.client>
分类:
C# .net开发
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2020-07-11 Linq to XML