Diferencia entre Declaración y CallableStatement

1. Declaración:
Se utiliza para acceder a su base de datos. La interfaz de sentencias no puede aceptar parámetros y es útil cuando se utilizan sentencias SQL estáticas en tiempo de ejecución. Si desea ejecutar la consulta SQL solo una vez, se prefiere esta interfaz sobre PreparedStatement.

Ejemplo –

//Creating The Statement Object  
Statement GFG = con.createStatement();
  
//Executing The Statement  
GFG.executeUpdate("CREATE TABLE STUDENT(ID NUMBER NOT NULL, NAME VARCHAR)"); 

2. CallableStatement:
se utiliza cuando desea utilizar los procedimientos almacenados de la base de datos. CallableStatement puede aceptar parámetros de entrada en tiempo de ejecución.

Ejemplo –

//Creating CallableStatement object 
CallableStatement GFG = con.prepareCall("{call anyProcedure(?, ?, ?)}");
 
//Use GFG.setter() methods to pass IN parameters
 
//Use GFG.registerOutParameter() method to register OUT parameters
 
//Executing the CallableStatement
 GFG.execute();
 
//Use GFG.getter() methods to retrieve the result 

Diferencia entre Declaración y CallableStatement:

Declaración CallableStatement
Se utiliza cuando la consulta SQL debe ejecutarse una sola vez. Se utiliza cuando se van a ejecutar los procedimientos almacenados.
No puede pasar los parámetros en tiempo de ejecución. Puede pasar los parámetros en tiempo de ejecución.
Se utiliza para instrucciones CREATE, ALTER, DROP. Se utiliza para ejecutar funciones.
El rendimiento es muy bajo. El rendimiento es mejor que la Declaración.
Se utiliza para ejecutar consultas SQL normales. Se utiliza para llamar a los procedimientos almacenados.
Es la interfaz base. Extiende la interfaz PreparedStatement.
Se utiliza para declaraciones DDL. Se utiliza para procedimientos almacenados.
No podemos usar declaraciones para leer datos binarios. Podemos usar CallableStatement para leer datos binarios.

Publicación traducida automáticamente

Artículo escrito por bansal_rtk_ y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *