相忘于江湖

不抛弃,不放弃... 请给我勇敢,改变可以改变的;请给我坚强,接受不可以改变的;请给我智慧,分辨这两者。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

C#使用instantclient连接 Oracle 10g  

1、从Oracle网站上下载instantclient-odbc-win32-10.2.0.3.zip

2、解压缩到instantclient所在的目录中

3、双击odbc_install.exe

4、控制面板->管理工具->数据源(ODBC)->添加数据源->选择oracle in instantclient10_2

       Data Source Name 可以任意起名,推荐和SID一样

       Description 描述

       TNS Service Name 下拉菜单中会自动显示环境变量TNS_ADMIN所指目录下的tnsnames.ora文件中SERVICE_NAME的名称,也就是要连接的SID

       UserID 用户名

5、Test Connection连接成功

C#

项目->添加引用->.NET->System.Data.OracleClient.dll (这个DLL在装完DOTNET 1.1就存在)

using System;
using System.Data;
using System.Windows.Forms;
using System.Data.OracleClient;

namespace Test
{
    
/// <summary>
    
/// 简洁期间,直接将实现写在构造函数中
    
/// </summary>

    public class Test
    
{
        
public Test()
        
{
            
//
            
// TODO: 在此处添加构造函数逻辑
            
//

            
string ConnectionString = "Data Source=orcl; User Id=SCOTT; Password=scott";  //连接字符串
            OracleConnection conn = new OracleConnection(ConnectionString);    //创建一个新连接
            
            
try
            
{
                conn.Open();    
//打开连接
                OracleCommand cmd = conn.CreateCommand();

                cmd.CommandText 
= "select * from emp";    //SQL语句
                OracleDataReader rs = cmd.ExecuteReader();

                
while (rs.Read())    //读取数据,如果rs.Read()返回为false的话,就说明到记录集的尾部了
                {
                    MessageBox.Show(rs.GetString(
1));
                }


                rs.Close();
            }


            
catch (Exception e)
            
{
                MessageBox.Show(e.Message);
            }

            
finally
            
{
                conn.Close();
            }

        }

    }

}
posted on 2013-03-09 18:22  playman0211  阅读(693)  评论(0编辑  收藏  举报