Reserved and non-reserved PL keywords

2025-11-14 07:33:32  Updated

Reserved PL keywords are identifiers that have special meanings. They cannot be used in names of stored procedures, functions, types, or variables. Non-reserved PL keywords can be used as identifiers with no need for quotation marks. The keywords are case-insensitive.

Reserved PL keywords

Initial letter Keyword
A ALTER
B BEFORE and BY
C CALL, CASE, CONDITION, CONTINUE, CREATE, CURRENT_USER, CURSOR, and COMMIT
D DECLARE, DEFAULT, DELETE, DETERMINISTIC, DROP, and DO
E EXISTS, ELSE, ELSIF, EXISTS, and EXIT
F FETCH, FOR, and FROM
I IF, IN, INDEX, INDEXES, INOUT, INSERT, and INTO IS ITERATE
L LEAVE, LIMIT, LONG, and LOOP
M MODIFIES
N NOT
O ON, OR, and OUT
P PROCEDURE
R READS, REPEAT, REPLACE, RESIGNAL, and RETURN
S SELECT, SIGNAL, SQL, SQLEXCEPTION, SQLSTATE, and SQLWARNING
T TABLE, THEN, and TRIGGER
U UPDATE, USING, and UNTIL
W WHEN and WHILE

Non-reserved PL keywords

Initial letter Keyword
A AFTER and AUTHID
B BEGIN_KEY, BINARY_INTEGER, and BODY
C C, CATALOG_NAME, CLASS_ORIGIN, CLOSE, COLUMN_NAME, COMMENT, CONSTRAINT_CATALOG, CONSTRAINT_NAME, CONSTRAINT_ORIGIN, CONSTRAINT_SCHEMA, CONTAINS, COUNT, and CURSOR_NAME
D DATA and DEFINER
E END_KEY and EXTEND
F FOUND and FUNCTION
H HANDLER
I INTERFACE and INVOKER
J JSON
L LANGUAGE
M MESSAGE_TEXT and MYSQL_ERRNO
N NEXT and NO
O OF and OPEN
P PACKAGE and PRAGMA
R RECORD, RETURNS, ROW, and ROWTYPE
S SCHEMA_NAME, SECURITY, and SUBCLASS_ORIGIN
T TABLE_NAME and TYPE
V VALUE

Contact Us