already know, SQL is a nonprocedural language. In the
chapter, you learned how to create procedural programs using
proprietary SQL procedural extensions. These programs (stored procedures,
user-defined functions, triggers, etc.) are stored inside RDBMS. This approach,
though very popular since the 1990s, was not the first attempt to empower SQL
with procedural language capabilities. The idea of the embedded SQL arose long
before the SQL procedural extensions were developed. It was introduced by IBM
in the beginning of the 1980s and then implemented by many other SQL vendors.
The dynamic SQL was the logical continuation of the embedded SQL principles
that alleviated some limitations and inconveniences of the latter.