如何返回包含变量的SQL Server中的OpenQuery到游标?OPENQUERY与游标中的变量
FOR EXECDECLARE curMyCursor CURSOR( 'SELECT * FROM OPENQUERY(SYBASE, '' SELECT * FROM MyTable的WHERE MyPrimaryKey =' '' '' + @Variable + '' '' '' ')')
OPEN @ResultCrsr
如何返回包含变量的SQL Server中的OpenQuery到游标?OPENQUERY与游标中的变量
FOR EXECDECLARE curMyCursor CURSOR( 'SELECT * FROM OPENQUERY(SYBASE, '' SELECT * FROM MyTable的WHERE MyPrimaryKey =' '' '' + @Variable + '' '' '' ')')
OPEN @ResultCrsr
你没有。 将打开的查询结果放入temo表中并在其上打开光标。
但为什么你需要一个光标?我相信没有它,有更好的方式去做事情。
你必须使用TSQL,因为你不能一个变量传递到OPENQUERY
:
DECLARE sqlCMD VARCHAR(500);
SET @sqlCMD =
'SELECT * FROM OPENQUERY(PASON, ''SELECT * FROM MyTable WHERE MyPrimaryKey=''''' + @Variable + ''''''')')
EXEC (@sqlCMD);