Lenguaje de procedimiento de SQL (SQL PL)
Los procedimientos y funciones SQL se denominan colectivamente rutinas SQL. Los procedimientos SQL se crean especificando un cuerpo de rutina SQL en la instrucción CREATE PROCEDURE. Las funciones SQL se crean especificando un cuerpo de rutina SQL en la instrucción CREATE FUNCTION. Los disparadores se crean especificando un cuerpo de disparador SQL en la instrucción CREATE TRIGGER. 
Sentencias de control de SQL
Las sentencias de control SQL son sentencias SQL que permiten utilizar SQL como lenguaje de programación estructurado. Las sentencias de control de SQL proporcionan la posibilidad de controlar el flujo lógico, declaran y establecen variables y gestionan avisos y excepciones. Algunas sentencias de control de SQL incluyen otras sentencias de SQL anidadas.
Las sentencias de control son compatibles con procedimientos SQL nativos, funciones SQL compiladas y disparadores avanzados.
- Las funciones SQL se crean especificando LANGUAGE SQL y un cuerpo de rutina SQL en una instrucción CREATE FUNCTION (SQL compilado). Una función SQL puede modificarse. Se puede especificar un nuevo cuerpo de rutina SQL en una instrucción ALTER FUNCTION (SQL compilado).
- Los procedimientos SQL se crean especificando LANGUAGE SQL y un cuerpo de rutina SQL en una instrucción CREATE PROCEDURE (SQL - nativo). Un procedimiento SQL puede modificarse. Se puede especificar un nuevo cuerpo de rutina SQL en una instrucción ALTER PROCEDURE (SQL - nativa).
Los disparadores se crean especificando un cuerpo de disparador en la instrucción CREATE TRIGGER (avanzada). Véase la instrucción CREATE TRIGGER (disparador avanzado ). Los activadores avanzados se pueden cambiar. El cuerpo de un disparador se puede cambiar especificando la cláusula OR REPLACE en una instrucción CREATE TRIGGER (avanzada), o con una instrucción ALTER TRIGGER (avanzada).
El cuerpo de la rutina SQL o el cuerpo del desencadenador es la parte ejecutable de la rutina o el desencadenador y se transforma en un programa por un intérprete de lenguaje de scripting ( Db2 ). El cuerpo debe ser una sola instrucción SQL, que podría ser una instrucción de control SQL.
El resto de esta sección contiene una descripción de las sentencias de control que son compatibles con las rutinas SQL y los desencadenadores avanzados, e incluye diagramas de sintaxis, descripciones semánticas, notas de uso y ejemplos del uso de las sentencias que constituyen el cuerpo de la rutina SQL o el cuerpo del desencadenador. Además, puede encontrar información sobre cómo hacer referencia a parámetros y variables SQL en Referencias a parámetros y variables SQL en SQL PL.
Los dos elementos comunes que se utilizan para describir instrucciones de control SQL específicas son:
- Instrucciones de control SQL como se describen anteriormente
- Declaración de procedimiento SQL (SQL PL)
