竟然没有人回复啊
我自己找到问题了
EXEC sp_addlinkedserver 'ORCL', 'Oracle', 'MSDAORA', 'ORCL'
EXEC sp_addlinkedsrvlogin 'ORCL', false, 'SA', 'TEST', 'TEST'第2句使用sa登陆的,但是我的企业管理器使用windows验证登陆,所以
这点应该   
EXEC sp_addlinkedsrvlogin 'ORCL', false, Null, 'TEST', 'TEST'这样就可以查询了谁近来顶一下,我发分

解决方案 »

  1.   

    服务器: 消息 7356,级别 16,状态 1,行 1
    OLE DB 提供程序 'MSDAORA' 为列提供的元数据不一致。执行时更改了元数据信息。
    OLE DB 错误跟踪[Non-interface error:  Column 'CHECKCODE' (compile-time ordinal 134) of object '"TEST"."EMP_EMPLOYEE"' was reported to have a DBTYPE of 130 at compile time and 129 at run time]。不好意思,又出问题了啊
    查询部分表,可以出来数据,查询大部分表,确出现 上面的错误,是什么原因啊
    那位大侠可以告诉我一下
      

  2.   

    SELECT * FROM OPENQUERY(ORCL, 'SELECT to_char(ASSESSOR)
     FROM TEST.TEST) 最后的查询应该这样来查询终于有一个人顶了,接分
      

  3.   

    /*利用MS SQL实现异构数据库的分布式查询的t-sql代码*/exec sp_addlinkedserver  'MS_SQL','','SQLOLEDB','172.18.9.20'
    exec sp_addlinkedsrvlogin 'MS_SQL','false',null,'Sa','capec' /*创建一个sqlserver对sqlserver的数据库远程链接*/exec sp_addlinkedserver 'ora', 'Oracle', 'MSDAORA', 'hj'
    exec sp_addlinkedsrvlogin 'ora', false, 'sa', 'ccense', '******' /*创建一个sqlserver对Oracle的数据库远程链接*/
    SELECT V_REC.CUSTOMERID,REC.OPDT,REC.COLLECTDT,REC.UPLOAD,rec.opcount rec_opcount,v_rec.opcount as v_rec_opcount
    FROM ora..CCENSE.REC_CUST_ACC V_REC INNER JOIN
          REC_CUST_ACC REC ON V_REC.CUSTOMERID = REC.CUSTOMERID AND 
          V_REC.OPCOUNT = REC.OPCOUNT
    WHERE (REC.UPLOAD = 0) /*MS SQL本机与Oracle的分布式查询*/
    SELECT V_REC.CUSTOMERID,REC.OPDT,REC.COLLECTDT,REC.UPLOAD,rec.opcount rec_opcount,v_rec.opcount as v_rec_opcount
    FROM ora..CCENSE.REC_CUST_ACC V_REC INNER JOIN
          MS_SQL.localcost.dbo.rec_cust_acc REC ON V_REC.CUSTOMERID = REC.CUSTOMERID AND 
          V_REC.OPCOUNT = REC.OPCOUNT
    WHERE (REC.UPLOAD = 0) /*远程MS SQL与Oracle的分布式查询*/