203.175.145.179是个链接服务器,在存储过程中下面这个语句保存时提示错误DELETE FROM [203.175.145.179].gmexchange.dbo.APPLY_CONSUME_ALL_CP
WHERE EXISTS (SELECT * FROM [203.175.145.179].gmexchange.dbo.MID_APPLY_CONSUME_ALL_CP
WHERE OWNER_CODE = @OWNER_CODE AND [203.175.145.179].gmexchange.dbo.APPLY_CONSUME_ALL_CP.G_SER = G_SER)提示:无法绑定由多部分组成的标识符"[203.175.145.179].gmexchange.dbo.APPLY_CONSUME_ALL_CP.G_SER"什么原因?怎么解决?

解决方案 »

  1.   

    用openquery()。
    如:
    select * from openquery('链接服务器','select * from 表名')
      

  2.   

    SELECT * FROM [203.175.145.179].gmexchange.dbo.MID_APPLY_CONSUME_ALL_CP
    这一部分是没有问题的问题出在where子句里的"[203.175.145.179].gmexchange.dbo.APPLY_CONSUME_ALL_CP.G_SER"
      

  3.   

    --tryDELETE T
    from [203.175.145.179].gmexchange.dbo.APPLY_CONSUME_ALL_CP as T
    WHERE EXISTS (SELECT * FROM [203.175.145.179].gmexchange.dbo.MID_APPLY_CONSUME_ALL_CP
    WHERE OWNER_CODE = @OWNER_CODE AND T.G_SER = G_SER)
      

  4.   

    --给表起别名--try
    DELETE T
    from [203.175.145.179].gmexchange.dbo.APPLY_CONSUME_ALL_CP as T
    WHERE EXISTS (SELECT * FROM [203.175.145.179].gmexchange.dbo.MID_APPLY_CONSUME_ALL_CP
    WHERE OWNER_CODE = @OWNER_CODE AND T.G_SER = G_SER)
      

  5.   

    果然可以,使用别名时,在delete 后面要加个表的别名,没想到。