下面是一个示例:关于扩展事件如何解释其组件以便在SQL中运行
Set @p2=180154943
declare @p5 int
set @p5=2
declare @p6 int
set @p6=1
declare @p7 int
set @p7=1
exec sp_cursorprepexec @p1 output, @p2 output,N ' @P1 nvarchar(256),@P2 nvarchar(256),@P3 int,@P4 int,@P5 nvarchar(34)', N' SELECT SOH_.ROWID, SOH_.SOHCAT_0, SOH_.DLVSTA_0, SOH_.DLVSTA_0, SOH_.REP_0 FROM SEED.SORDER SOH_ JOIN SEED.AFCTFCY AFF_ ON ((AFF_.FCY_0 = SOH_.SALFCY_0) AND (AFF_.PRFCOD_0 = @P1) AND (AFF_.FNC_0 = @P2)) LEFT OUT JOIN SEED.TABMODELIV TMD_ ON ((TMD_.MDL_0 = SOH_.MDL_0)) LEFT OUTER JOIN SEED.BPADDRESS BPA_ ON ((BPA_.BPATYP_0 = @P3) AND BPA_.BPANUM_0 = SOH_.BPCORD_0 AND (BPA_.BPAADD_0 = SOH_.BPAADD_0)) WHERE SOH_.SOHCAT_0 < @P4 AND SOH_.SOHNUM_0 >= @P5
ORDER BY SOH_.SOHNUM_0 DESC
OPTION (FAST 100)',@p5 output,@p6 output,@p7 output, N'ADMIN',N'FUNCDUCDM',1,2,N' '
select @p1, @p2, @p5, @p6, @p7
在Management Studio中运行这项查询所需的部分为粉色、蓝色和绿色。
为了能够在SQL Server Management Studio中运行,重写之后的这项查询将显示如下:
DECLARE @P1 nvarchar(256),@P2 nvarchar(256),@P3 int,@P4 int,@P5 nvarchar(34)
SELECT @P1=N'ADMIN', @P2=N'FUNCDUCDM', @P3=1, @P4=2, @P5=N' '
SELECT SOH_.ROWID, SOH_.SOHCAT_0, SOH_.DLVSTA_0, SOH_.DLVSTA_0, SOH_.REP_0
FROM SEED.SORDER SOH_
JOIN SEED.AFCTFCY AFF_
ON ((AFF_.FCY_0 = SOH_.SALFCY_0)
AND (AFF_.PRFCOD_0 = @P1)
AND (AFF_.FNC_0 = @P2))
LEFT OUTER JOIN SEED.TABMODELIV TMD_
ON ((TMD_.MDL_0 = SOH_.MDL_0))
LEFT OUTER JOIN SEED.BPADDRESS BPA_
ON ((BPA_.BPATYP_0 = @P3)
AND BPA_.BPANUM_0 = SOH_.BPCORD_0
AND (BPA_.BPAADD_0 = SOH_.BPAADD_0))
WHERE SOH_.SOHCAT_0 < @P4 And SOH_.SOHNUM_0 >= @P5
ORDER BY SOH_.SOHNUM_0 DESC
OPTION (FAST 100)