我正在尝试创建一个包含动态 SQL 的存储过程。proc 接收 5 个变量,其中 3 个是列和字段的名称,另外 2 个用于 OFFSET 和 FETCH NEXT 部分。我在最后两个变量上不断收到此错误:
消息 137,级别 15,状态 2,第 34 行 必须声明标量变量“@numOfOffset”。消息 137,级别 15,状态 2,第 34 行 必须声明标量变量“@numOfRows”。
我会感谢一些帮助,请
IF (SELECT 1 FROM sys.procedures WHERE [name] = 'sp_targil1') = 1
DROP PROCEDURE sp_targil1;
GO
CREATE PROCEDURE sp_targil1 (@tableName varchar(30), @fieldNameAggBy varchar(30), @fieldNameToAggOn varchar(30)
, @numOfOffset int, @numOfRows int
)
AS
BEGIN
DECLARE @query1 varchar(500)
DECLARE @qaeryMain varchar(500)
DECLARE @maxNumberOfRows int
SET @qaeryMain =
'
SELECT ' + @fieldNameAggBy + ', …
Run Code Online (Sandbox Code Playgroud)