Las sentencias preparadas de JDBC permiten la “precompilación” del
código SQL antes de ser ejecutado, permitiendo consultas o actualizaciones más
eficientes. En el momento de compilar la sentencia SQL, se analiza cuál es la
estrategia adecuada según las tablas, las columnas, los índices y las condiciones
de búsqueda implicados. Este proceso, obviamente, consume tiempo de procesador,
pero al realizar la compilación una sola vez, se logra mejorar el rendimiento
en siguientes consultas iguales con valores diferentes.
Otra ventaja de las sentencias preparadas es que permiten la
parametrización: la sentencia SQL se escribe una vez, indicando las
posiciones de los datos que van a cambiar y, cada vez que se utilice, le
proporcionaremos los argumentos necesarios que serán sustituidos en los lugares
correspondientes. Los parámetros se especifican con el carácter ‘?’.
public class Actualizacion{private
PreparedStatement sentencia;public
void prepararInsercion(){String
sql = "insert into personas values ( ?, ? ,? )";sentencia
= conexion.prepareStatement(sql);}public
void insertarPersona(String nombre, dirección, telefono){sentencia.setString(1,
nombre);sentencia.setString(2,
direccion);sentencia.setString(3,
telefono);sentencia.executeUpdate();}}
Al utilizar esta clase, obviamente, deberemos llamar primero al
método que prepara la inserción, y posteriormente llamar tantas veces como
sea necesario al método insertarPersona.
Se definen tres parámetros en la sentencia SQL, a los cuales se
hace referencia mediante números enteros consecutivos:
String sql = "insert into personas values ( ?, ?
,? )";
No hay comentarios:
Publicar un comentario