![](https://www.cvosoft.com/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
📘ABAP - SQLJ
![](https://www.cvosoft.com/cvo_files/img_sistema_elearning/iconografia_sap_abap/switch-portfolio-neutro.png)
Definición de SQLJ
Es un estándar para embeber sentencias SQL en programas Java.
No es una API sino una extensión del lenguaje, por lo que los programas deben pasarse por un traductor SQLJ antes de ser compilados.
SQLJ es una ampliación de lenguaje utilizada para transacciones de base de datos en aplicaciones Java™ EE. Genera SQLJ integrado y estático. Este término está formado por SQL, que quiere decir Structured Query Language y J, que significa Java EE.
SQLJ es estático porque las sentencias SQL que se ejecutarán durante el tiempo de ejecución se conocen cuando se ensambla el programa. Al contrario que JDBC, donde las consultas que se ejecutan se pueden cambiar en cualquier momento.
SQLJ está incorporado porque durante el establecimiento de enlaces se ofrece a la base de datos un formato serializado de sentencias SQL de los programas a la base de datos. La base de datos utiliza estos datos serializados para determinar vías de acceso optimizadas a las tablas a las que hacen referencia. En JDBC, la base de datos no puede determinar qué sentencias se ejecutarán hasta que las recibe durante el tiempo de ejecución desde la aplicación. Por ello, debe determinar vías de acceso durante el tiempo de ejecución. Esto incurre en una sobrecarga que se puede evitar utilizando SQLJ.
![](https://www.cvosoft.com/cvo_files/imgs_sap_abap/spacer660.gif)