La sentencia SQL asociada a una sentencia EGL puede especificarse estáticamente, con todos los detalles establecidos durante la generación. Sin embargo, cuando está en vigor SQL dinámico, la sentencia SQL se construye durante la ejecución cada vez que se invoca la sentencia EGL.
La utilización de SQL dinámico disminuye la velocidad del proceso de ejecución, pero permite
variar una operación de base de datos como respuesta a un valor de ejecución:
- Para una consulta de base de datos, es posible que desee variar los criterios de selección, la forma en que se agregan los datos o el orden en que se devuelven las filas; estos detalles se controlan mediante las cláusulas WHERE, HAVING, GROUP BY y ORDER BY. En este caso, puede utilizar la sentencia prepare.
- Para muchos tipos de operaciones, es posible que desee que un valor de ejecución determine a
qué tabla se debe acceder. Puede llevar a cabo la especificación dinámica de una tabla de una de las dos maneras siguientes:
- Utilice la sentencia prepare; o bien
- Utilice un registro SQL y especifique un valor para la propiedad tableNameVariables,
como se describe en Componente de registro SQL en formato fuente EGL.