本帖最后由 ade1986 于 2011-02-28 17:16:22 编辑

解决方案 »

  1.   

    Data Source=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ora10g))应该是这里面的问题 我看看先
      

  2.   

    改成这个看看Data Source==(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))))(CONNECT_DATA=(SERVICE_NAME=ora10g)))貌似你少了个括号!!!!
      

  3.   

    为啥不先配置TNS后,直接使用TNS名来连接?
    假设你在TNS中配置了一个叫km的Server名,那么你只要使用“Data Source=km;User ID=ckgl;Password=ckgl;”来连接Oracle即可。
    关于TNS的添加,你可以直接使用Oracle的配置工具来添加,也可以通过程序动态检测注册表信息来添加(前提是你得安装过Oracle客户端,本机装过Oracle服务的也可以).下面是关于如何程序动态添加TNS的一个例子:
    http://www.cnblogs.com/qldsrx/archive/2010/03/18/1689128.html
      

  4.   


    谢谢你的回答,但是我写的程序就是不想用用户非得装ORacle才行。
      

  5.   

    你还是没有明白,“不想用用户非得装ORacle才行”是做不到的,除非你考虑用ODBC(也不见得有驱动),再除非你程序自己绑定一个驱动。
    这好比你有一台打印机连接在USB口上,不安装驱动你就直接往USB口发指令,它根本不理你。
      

  6.   

    为什么SQLSERVER不需要装客户端?
    废话,微软在.NET包里集成了驱动,当然不用你再安装了。
      

  7.   


    这个我们做的程序已经能实现了,有个插件装上之后,出来的程序连接oracle数据库是不需要客户机器必须安装oracle的,至于怎么做的我也不知道,我也是菜鸟。
      

  8.   

    http://server.zol.com.cn/127/1273876.html
      

  9.   

    打开D:\oracle\product\10.1.0\Db_1\network\admin\(路径改成你oracle的安装路径)下的tnsnames.ora文件. 
    在里面配置你的连接信息. 
    比如tnsnames.ora文件里面有配置信息: 
    INSTANSNAME = 
      (DESCRIPTION = 
        (ADDRESS_LIST = 
          (ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF-584B4A(这里用你的机器名或者ip))(PORT = 1521)) 
        ) 
        (CONNECT_DATA = 
          (SERVICE_NAME = INSTANSNAME) 
        ) 
      ) 
    哪么连接串就写成 
    connectionstr="Data source=INSTANSNAME;Password=ttt;Persist Security Info=True;User Id=123"http://topic.csdn.net/u/20091005/14/b54f7e21-ed75-46a6-bbb4-a5bf1db8a946.html
      

  10.   


    这种连接串如果用的话必须要求机器上有oracle客户端么
      

  11.   

    不管你用哪种connection string format,客户端必须有。
      

  12.   


    那完了,我从根上错了,还是专用devart吧,这个真的不错,给推荐下,以前用过,不过用在vs2010上貌似过期了,杯具。
      

  13.   


    我告訴你,,目前最好的oracle鏈接庫最好的是以下,oracle自身的當然很好,只是大得你受不起,,400mb網站 1網站 2 網站 3 
    找我要這些的控件的人,不少於過千
      

  14.   

    1.需要安装一个客户端,如果你只需要你的程序可以连接ORACLE数据库,也可以不安装,把三个文件copy到你程序的目录下即可.
    2.不需要写什么tnsnames.ora文件 
    3.连接字符串是Data Source=192.168.1.1:1521/orcl;Uid=gcd;Pwd=cnm;(你的SERVER要求10g或者以上)
    4.楼主如果需要把程序部署给客户,如果需要客户端的话,我有个打包好的,地址如下:
       http://download.csdn.net/source/1142118 20M不到
      

  15.   

    昨天晚上用Devart解决了这个问题,谢谢crackdung给了我提示,让我想到了Devart,同时也谢谢其他哥们让我明白了我已开始就错了。一共就90分了,散完,分不多,多包涵,呵呵。