Problem with Distributed Query

  • A little help please...

    update Server.DB1.dbo.TABLE

     set D_REFRESH_FLAG = 0

    where

    SERVER_NM = @@servername and DATABASE_NM = db_name() generates the following error:

    Could not open table '"DB1"."dbo"."Table"' from OLE DB

    provider 'SQLOLEDB'.  The provider could not support a row lookup position.

    The provider indicates that conflicts occurred with other properties or

    requirements. [OLE/DB provider returned message: Multiple-step OLE DB operation

    generated errors. Check each OLE DB status value, if available. No work was done.]

    However, this select works fine.

    select * from Server.DB1.dbo.TABLE

    where

    SERVER_NM = @@servername and DATABASE_NM = db_name()

    Any thoughts?

     

    Thanks in advance,

    dab

  • I may be completely off but I've had problems running update/delete statement on linked server with ADO when the table had no primary key (or unique constraint). Other than that your query seems fine.

    >>The provider indicates that conflicts occurred with other properties or requirements

    This sounds to me like there may be a trigger or constraint check on that table that may conflict with the updated data.

    Or maybe you are missing a permission somewhere??.. but I guess SqlServer would tell you if that were the case.

  • I actually found a not so bad work-around for this. I'm executing the query through iSql running on xp_cmdshell. Plus I don't need to worry about creating the linked server. No problems there.

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply