'PostgreSQL - SQL state: 42601 syntax error Character: 316
I would like to know how to resolve this syntax error. I've tried lots of ways, however, when I try to compile my function a message SQL 42601 is displayed.
The code that I use:
create or replace PROCEDURE SP_Generate_EventToken(EventId bigint) AS $$
DECLARE TokenCount int;
DECLARE Success int;
DECLARE SerialNo int=0;
BEGIN
BEGIN TRY
SET @Success = 0;
--Get Available Token count
SELECT @TCNT = COUNT(Field1) FROM TbECT WHERE Field2 = 0;
IF EventId > 0
BEGIN
SELECT SerialNo=(SerialNo) from TbDefault
--Get Generated Token Count
SELECT @TokenCount = COUNT(Id) FROM TbComplementaryClaim WHERE [EventId] = EventId
--Get Guest Count
SELECT @GUESTNO = (CASE WHEN TokenType = 0 THEN [NoOfGuests] WHEN TokenType = 1 THEN 1 WHEN TokenType = 2 THEN [NoOfGuests] END), @TokenType = TokenType, @GUESTNOC = [NoOfGuests] FROM [dbo].[TbComplementaryEvents] WHERE [Id] = @EventId
SET @GUESTNO = @GUESTNO - @TokenCount
IF @GUESTNO > 0
BEGIN
BEGIN TRANSACTION
--Reset all token
IF @TCNT < @GUESTNO
BEGIN
UPDATE TbECT SET Field2 = 0
END
COMMIT TRANSACTION
END
END
END TRY
END;
$$ LANGUAGE plpgsql;
Error message I receive:
ERROR: syntax error at or near "TRY"
LINE 14: BEGIN TRY;
^
SQL state: 42601
Character: 316
What is wrong? How can I solve this problem?
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
