zoukankan      html  css  js  c++  java
  • C# 连接Oracle(利用ODP.net,不安装oracle客户端)

    Posted on 2011-07-11 20:31 wang_yb
    为了方便部署连接oracle的.net程序,oracle官方提供了一个简化版的client,即instant client

    通过instant client和ODP.net中的Oracle.DataAccess.dll,我们就可以方便的部署.net应用程序或者站点。

    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,内容如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    数据库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的示例代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    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 = new List<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中追加数据库连接的配置

    1
    2
    3
    4
    5
    6
    <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>

    还可以参考官方的文档,不过是英文的,呵呵!

    Build a .NET Application on the Oracle Database with Microsoft Visual Studio 2010

  • 相关阅读:
    CSS3圆角详解
    纯CSS绘制三角形(各种角度)
    jquery实现文字上下无缝滚动
    选择select里面某个option触发的事件
    倒计时
    移动端弹出层加遮罩后禁止滑动
    终端连接oschina 生成SSH公钥
    兼容所有的浏览器透明度代码
    背景颜色渐变效果设置
    Linux下搜索文件命令whereis/which/find/locate
  • 原文地址:https://www.cnblogs.com/kingangWang/p/2706274.html
Copyright © 2011-2022 走看看