Programmazione SQL integrata

I programmi applicativi scritti in linguaggi host come COBOL possono contenere istruzioni SQL. La forma sorgente di un'istruzione SQL statica è incorporata nel programma applicativo e l'istruzione viene preparata prima dell'esecuzione del programma, mentre la forma operativa dell'istruzione persiste oltre l'esecuzione del programma.

Un programma applicativo può anche contenere istruzioni SQL dinamiche, note come SQL dinamico incorporato. I programmi che contengono istruzioni SQL dinamiche incorporate devono essere precompilati come quelli che contengono SQL statico, ma a differenza di quest'ultimo, le istruzioni dinamiche sono costruite e preparate in fase di esecuzione. La forma sorgente di un'istruzione dinamica è una stringa di caratteri che viene passata a un Db2 e dal programma utilizzando l'istruzione statica SQL PREPARE o EXECUTE IMMEDIATE. È possibile fare riferimento a un'istruzione preparata utilizzando l'istruzione PREPARE in un'istruzione DECLARE CURSOR, DESCRIBE o EXECUTE. La persistenza della forma operativa dell'istruzione dipende dall'abilitazione o meno della cache dinamica delle istruzioni.