本机从sql数据导入到oracle,dts包手动执行可以,但自动调度就报错,说无法解析连接字符串,有谁知道是什么原因?服务是开的。
具体错误信息如下:
C:\Documents and Settings\Administrator>
DTSRun /~Z0xB4AC641CA1E0F1FE22ECE741EA45
B5813DC5C165D70FCDAAA2DBB310D2E22AF0BFCC
85A8AF93BAD3E8F55CA918ACAAE58E3AF6A74CBE
801D65E3920C1F0C3324DF4E533E54813FC82460
67EF4821BC100F96FF3E5ED9ABAF58D0709CDEA1
FD02BBA2D5838DF6FA9BB7B60E64D62ADE7ABF9E
133344950456A8D2EA745935D8AC90A1D0
DTSRun:  正在装载...
DTSRun:   正在执行...
DTSRun OnStart:  Copy Data from 结果 to "A_XZSJJ".DS_ENTER 步骤
DTSRun OnError:  Copy Data from 结果 to "A_XZSJJ".DS_ENTER 步骤, Error = -214746
7259 (80004005)
   字符串错误:   ORA-12154: TNS: 无法解析指定的连接标识符
   错误源:   OraOLEDB
   帮助文件:
   帮助上下文:   0错误详细记录:错误:   -2147467259 (80004005); 提供程序错误:   12154 (2F7A)
   字符串错误:   ORA-12154: TNS: 无法解析指定的连接标识符
   错误源:   OraOLEDB
   帮助文件:
   帮助上下文:   0DTSRun OnFinish:   Copy Data from 结果 to "A_XZSJJ".DS_ENTER 步骤
DTSRun:   包执行完毕。

解决方案 »

  1.   

    查看下你tnsnames.ora配置文件中是否配置正确
      

  2.   

    PL/SQL登陆是可以的,数据导入那里测试也可以。而且如果有问题,手动执行怎么会通过?
      

  3.   

    因为你的DTS包不是在数据库服务器上建立的,远程建立的DTS包能够执行成功是因为你加载的是本地机器的数据库环境。如果想要在服务器上调度作业成功。
    1、你在本地机器上怎么配置的ODBC、Oracle的服务命名啊什么的,你都要在服务器上同样配置一遍。
    2、要么直接在服务器上建DTS包。说白了,让在服务器上DTS包的运行环境和你的远程测试执行DTS包的环境一致。
    我也是今天碰到的这个问题,查了半天没结果,自己试出来的。希望能帮到你。