不确定如何捕获此查询的结果

时间:2014-04-25 12:32:46

标签: sql-server sql-server-2008 linked-server

我正在针对远程SQL Server执行以下查询:

EXEC LinkedServer.MyDatabase..sp_executesql N'SELECT sys.fn_cdc_get_min_lsn(''dbo_td_coater_rga_new'');';

查询工作正常,但我不确定如何捕获查询结果并将其存储到变量中。例如,这不起作用:

Declare @begin_lsn binary(10)

Set @begin_lsn = EXEC LinkedServer.MyDatabase..sp_executesql N'SELECT sys.fn_cdc_get_min_lsn(''dbo_td_coater_rga_new'');';

1 个答案:

答案 0 :(得分:2)

您可以将变量传递给sp_executesql。您必须将其声明为OUTPUT才能收到值:

Declare @begin_lsn binary(10)

EXEC LinkedServer.MyDatabase..sp_executesql N'SELECT @begin_lsn = sys.fn_cdc_get_min_lsn(''dbo_td_coater_rga_new'');', 
    N'@begin_lsn binary(10) OUTPUT', @begin_lsn OUTPUT