问一下大侠:
我看了很多网上例子,都是用OralceClient去访问,
当然这需要装oracle客户端,这里应该需要引用
一个动态库吧?还是需要安装一个oracle对.net的一个组件?
在哪下载?
还有,能不能只引用几个动态库而不安装oracle客户端就可以访问
oracle吗?谢谢了!
100分奉上!

解决方案 »

  1.   

    OralceClient客户端很小的,最好安装OralceClient
    只安装DLL是不行的。。因为还要配置呢
      

  2.   

    System.Data.OracleClient.dll 不需要裝oracle客戶端啊,直接添加引用,就在.net系統組件裏面.
      

  3.   

    TO:Kshatriya(通讯基本靠吼,交通基本靠走)
    System.Data.OracleClient.dll 不需要裝oracle客戶端啊,
    直接添加引用,就在.net系統組件裏面.引用我是找到了。
    现在问题是:
    我看了别人的例子,都说还要装oracle或者oracle客户端。
    能不装吗?
      

  4.   

    在 .net 2.0里面好像直接包含了,1.x需要,
    http://www.oracle.com/technology/software/tech/dotnet/odt_index.html
      

  5.   

    现在遇到新问题了:
    我的存储过程是:
    create or replace package body PakNetTest is    PROCEDURE Rpttest(inStr in varchar2, outQueryList out queryList) is
            rs t_g_xx0100%rowtype;
        begin
            OPEN outQueryList FOR
                select * into rs from t_g_xx0100 where t_g_xx0100.xxdm = inStr;
        end Rpttest;end PakNetTest;我连接oracle:
    string strConn = "Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;User Id=Username;Password=ps;";
    OracleConnection oracleCnn = new OracleConnection(strConn);
    OracleCommand cmd = new OracleCommand("PakNetTest.Rpttest",oracleCnn);
    cmd.Parameters.Add("inStr",OracleType.VarChar,10).Value = "12345";
    cmd.Parameters.Add("outquerylist",OracleType.Cursor);
    cmd.Parameters["outquerylist"].Direction = ParameterDirection.Output;oracleCnn.Open();
    OracleDataAdapter da = new OracleDataAdapter(cmd);
    da.Fill(ds,"dataset");//此出报异常:"ORA-01036: 非法的变量名/编号\n"
    oracleCnn.Close();
    如果单独执行一条sql语句查询一条记录都很正常,就是调存储过程时出错。
    郁闷了几天了,望大侠们再帮助一下!
      

  6.   

    还有存储过程在PLSQL中调试也没问题。
      

  7.   

    上面连接字符串复制错了,
    应该是:
    string strConn = "User ID=Username;Password=ps;Data Source=test";
      

  8.   

    你少了一句话 
    cmd.CommandType = CommandType.StoredProcedure;
      

  9.   

    谢谢touge(不能说)!
    问题解决了!谢谢大家!
    马上放分!