C#利用ODP.net连接Oracle数据库的操作方法

 更新时间:2012年11月15日 11:40:35   作者:  
本文将介绍C#利用ODP.net连接Oracle数据库的操作方法,需要的朋友可以参考下
本文介绍了C#连接Oracle数据库的过程。通过instant client和ODP.net中的Oracle.DataAccess.dll,我们就可以方便的部署.net应用程序或者站点,而不需要安装Oracle客户端。接下来我们就介绍这一过程。

1. ODAC的安装
在oracle的官方网站上下载与你安装的oracle对应版本的ODAC。
下载地址:ODAC Download
下载好后解压安装,安装时不用安装全部的组件。主要安装以下组件:
Oracle Instant Client
Oracle Data Provider For .net2.0
Oracle rovider For Asp .net

2. 环境变量的设置
设置Windows的环境变量:
ORACLE_HOME :ODAC的安装目录(类似 ~\app\Administrator\product\11.1.0\client_1);
LD_LIBRARY_PATH :%ORACLE_HOME%;
TNS_ADMIN : %ORACLE_HOME%;
在PATH的最前面追加:%ORACLE_HOME%;

3. 监听文件tnsnames.ora的配置
在目录%ORACLE_HOME%下新建文件tnsnames.ora,内容如下:
复制代码 代码如下:

数据库SID =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = Oracle主机名或者IP)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = 数据库SID)
)
)

4. plsqldev
这样配置好后,plsqldev就可以连接上oracle数据库了。

5. C#连接Oracle
C#连接oracle的示例代码如下:
复制代码 代码如下:

OracleConnection conn =
new OracleConnection();
try
{
conn.ConnectionString = ConfigurationManager.ConnectionStrings["oradb"].ConnectionString;
conn.Open();
string sql = " select id,content from test"; // C#
OracleCommand cmd = new OracleCommand(sql, conn);
cmd.CommandType = CommandType.Text;
OracleDataReader dr = cmd.ExecuteReader(); // C#
List<string> contents = newList<string>();
while(dr.Read())
{
contents.Add(dr["content"].ToString());
}
listBox1.ItemsSource = contents;
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Clone();
}

在程序app.config或者web.config中追加数据库连接的配置。
复制代码 代码如下:

<connectionStrings >
<add name="oradb"connectionString="Data Source=(DESCRIPTION=
(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.1)(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=****)));
User Id=***;Password=***;"/>
</connectionStrings>

按照上述的步骤执行,如果没有错误,就可以成功地连接数据库了。

相关文章

  • Oracle自我补充之trunc()函数的使用方法

    Oracle自我补充之trunc()函数的使用方法

    TRUNC函数为指定元素而截去的日期值。下面通过本文给大家介绍Oracle自我补充之trunc()函数的使用方法,感兴趣的朋友一起看看吧
    2017-06-06
  • Oracle数据库如何删除归档日志文件

    Oracle数据库如何删除归档日志文件

    这篇文章主要给大家介绍了关于Oracle数据库如何删除归档日志文件的相关资料,当Oracle中的归档日志空间满时,则需要把它清空,否则将会影响数据库正常运行,将无法正常登入ORACLE,需要的朋友可以参考下
    2023-11-11
  • 常用的Oracle doc命令(收藏)

    常用的Oracle doc命令(收藏)

    这篇文章主要介绍了常用的Oracle doc命令(收藏)的相关资料,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-10-10
  • Oracle RAC环境下的阻塞(blocking blocked)介绍和实例演示

    Oracle RAC环境下的阻塞(blocking blocked)介绍和实例演示

    这篇文章主要介绍了Oracle RAC环境下的阻塞(blocking blocked)介绍和实例演示本文提供了2个查询脚本,并给出实例演示那些session为阻塞者,哪些为被阻塞者,需要的朋友可以参考下
    2014-09-09
  • Oracle中字符串连接的实现方法

    Oracle中字符串连接的实现方法

    Oracle数据库中,使用“||”进行字符串连接,下面就让我们一起了解一下Oracle数据库中字符串连接的方法,希望对您能有所帮助
    2013-05-05
  • Oracle中3种常用的分页查询方法

    Oracle中3种常用的分页查询方法

    这篇文章主要给大家介绍了关于Oracle中3种常用的分页查询方法,分页查询就是把query到的结果集按页显示,比如一个结果集有1W行,每页按100条数据库,而你获取了第2页的结果集,需要的朋友可以参考下
    2023-09-09
  • Oracle数据库下载与安装的完整步骤

    Oracle数据库下载与安装的完整步骤

    这篇文章主要给大家介绍了关于Oracle数据库下载与安装的相关资料,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • PLSQL安装、汉化和激活的方法步骤实现

    PLSQL安装、汉化和激活的方法步骤实现

    这篇文章主要介绍了PLSQL安装、汉化和激活的方法步骤实现,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Oracle触发器实例代码

    Oracle触发器实例代码

    Oracle触发器,用于选单后修改选单的表的触发动作。接下来通过本文给大家分享Oracle触发器实例代码,需要的的朋友参考下吧
    2017-04-04
  • oracle使用order by排序null值如何处理

    oracle使用order by排序null值如何处理

    oracle 对查询结果进行排序时,被排序的栏位存在null值,且要指定NULL值排在最前面或者最后面,本文将介绍如何处理oracle 空值排序,需要的朋友可以参考下
    2012-11-11

最新评论