我正在尝试编写一个存储过程,该存储过程应该仅为0到350范围内的记录将数据插入表中 .
它获得两个整数作为参数
CREATE PROCEDURE SP_MesaEnRango
(@nroMesa INT,
@cantidadVotantes INT)
AS
BEGIN
IF @nroMesa IS NOT NULL OR @cantidadVotantes IS NOT NULL OR
@cantidadVotantes < 0 OR @cantidadVotantes > 350
BEGIN
DECLARE @errorMessage NVARCHAR(50);
BEGIN TRANSACTION;
BEGIN TRY
INSERT INTO Mesas (nroMesa, cantidadVotantes)
VALUES (@nroMesa, @cantidadVotantes);
END TRY
BEGIN CATCH
SET @errorMessage = 'ERROR';
IF @@TRANCOUNT > 0
BEGIN
ROLLBACK TRANSACTION;
END;
END CATCH;
IF @@TRANCOUNT > 0
BEGIN
COMMIT TRANSACTION;
END;
END;
我在';'附近出现语法错误
1 回答
您在最后缺少
END
来完成程序正文 . 如果你持续缩进并保持BEGIN
和END
排成一行,那么你需要重新格式化你的代码版本,并添加了缺少的END
: