1

如何在 SQL Server 中将包含变量的 OpenQuery 返回到游标?

DECLARE curMyCursor CURSOR FOR
    EXEC('SELECT *
          FROM OPENQUERY(SYBASE,
                ''SELECT * FROM MyTable WHERE MyPrimaryKey=''''' + @Variable + ''''''')')
OPEN @ResultCrsr
4

2 回答 2

2

你没有。将打开的查询结果放入临时表并在其上打开游标。

但是为什么你需要一个光标呢?我确信没有它会有更好的做事方式。

于 2009-01-28T13:01:49.387 回答
2

您必须使用 TSQL,因为您不能将变量传递给OPENQUERY

DECLARE sqlCMD VARCHAR(500);

SET @sqlCMD = 
   'SELECT * FROM OPENQUERY(PASON, ''SELECT * FROM MyTable WHERE     MyPrimaryKey=''''' + @Variable + ''''''')')                    

EXEC (@sqlCMD);
于 2016-12-07T03:53:12.480 回答