1 ALTER
2 PROCEDURE procedure-name
2.1? (
2.1.1? parameter-type
2.1.2 )
2 SPECIFIC PROCEDURE specific-name
3! ALTER
3.1 option-list
3 REPLACE routine-specification

routine-specification:

1? 
1 (
1.1? 
1.1+ ,
1.1 parameter-declaration
1.2 )
2? 
2 option-list
3? SET OPTION-statement
4 SQL-routine-body

parameter-declaration:

1! IN
1?
1 OUT
1 INOUT
2 parameter-name data-type

parameter-type:

1 data-type
1.1? AS LOCATOR

data-type:

1 built-in-type
1 distinct-type-name

option-list:

1! NOT DETERMINISTIC
1?
1 DETERMINISTIC
2 (1) 

3! MODIFIES SQL DATA
3?
3 READS SQL DATA
3 CONTAINS SQL
4! CALLED ON NULL INPUT
5! DYNAMIC RESULT SETS 0
5?
5 DYNAMIC RESULT SETS integer
6? 
6 ALLOW DEBUG MODE
6 DISABLE DEBUG MODE
6 DISALLOW DEBUG MODE
7! FENCED
7?
7 NOT FENCED
8! OLD SAVEPOINT LEVEL
8?
8 NEW SAVEPOINT LEVEL
9! COMMIT ON RETURN NO
9?
9 COMMIT ON RETURN YES