Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Prepared Statement
1. “AÑO DE LA CONSOLIDACIÓN DEL MAR DE GRAU”
INTEGRANTES:
Rosaliny Yonely Rivera Salazar.
Sandrita Rafael Estela.
DOCENTE:
Marco Aurelio Porro Chulli.
2. PreparedStatement
Es una sentencia SQL de
base de datos precompilada.
Al estar precompilada, su
ejecución será más rápida que
una SQL normal, por lo que es
adecuada cuando vamos a
ejecutar la misma sentencia
SQL (con distintos valores)
muchas veces.
Se utiliza para enviar
sentencias SQL pre
compiladas con uno o
más parámetros.
PreparedStatement tiene un grupo de
métodos que fijan los valores de los
parámetros IN, los cuales son enviados
a la base de datos cuando se procesa
la sentencia SQL; las instancias de
PreparedStatement extienden, es decir,
heredan de Statement y por tanto
heredan los métodos de Statement.
3.
4. Crear el PreparedStatement
Una vez establecida la
conexión, podemos crear
el PreparedStatement
llamando al método
prepareStatement() de la
Connection.
Un buen sitio para guardar
este PreparedStatement
puede ser un atributo de
la clase.
Cada vez que vamos a
usarlo creamos un
PreparedStatement nuevo,
tampoco conseguiremos la
mejora de eficiencia.
Es importante guardar este
PreparedStatement en algún
sitio al que podamos acceder
cuando lo necesitemos.
5. Método executeUpdate():
Clase que
representa
una sentencia
precompilada
de SQL.
Uso de PreparedStatement.executeUpdate para una
sentencia de SQL con marcadores de parámetros:
Connection con;
PreparedStatement pstmt;
int numUpd;
pstmt = con.prepareStatement(
"UPDATE EMPLOYEE SET PHONENO=? WHERE
EMPNO=?");
// Crear un objeto
PreparedStatement 1
pstmt.setString(1,"4657"); // Asignar valor al primer
parámetro 2
pstmt.setString(2,"000010"); // Asignar valor al
segundo parámetro de entrada
numUpd = pstmt.executeUpdate(); // Ejecutar la
actualización 3
pstmt.close(); //Cerrar el objeto PreparedStatement 4
6. Uso de
CallableStatement
Son procedimientos
almacenados al igual que las
PreparedStatements y las
consultas simples se hacen
sobre la conexión, en este
caso con el método
prepareCall() que nos
devuelve un
CallableStatement,
El procedimiento almacenado
además de ir entre comillas por
ser un string tiene que ir
también entre llaves y tiene el
siguiente formato “{call
nombre_procedimiento(?,?,…)}”
Los parámetros de
entrada como con las
PreparedStatements se
definen con los métodos
setXXX();
El procedimiento se ejecuta
cuando llamamos al método
execute, y como es lógico en el
momento en el que se ejecute
tienen que estar definidos
todos los parámetros tanto de
entrada como de salida
7. Ejemplo de PreparedStatement:
El siguiente fragmento de código, donde con es un objeto Connection,
crea un objeto PreparedStatement que contiene una instrucción SQL:
Creamos un objeto PreparedStatement desde el objeto Connection
PreparedStatement ps = con.prepareStatement(
"select * from Propietarios where DNI=? AND NOMBRE=? AND
EDAD=?");
Seteamos los datos al prepared statement de la siguiente forma:
ps.setString(1, dni);
ps.setString(2, nombre);
ps.setInt(3, edad);
Ejecutamos el PreparedStatement, en este caso con executeQuery()
ResultSet rs= ps.executeQuery();