Tema: prepare
Ver Mensaje Individual
  #4  
Antiguo 10-05-2005
pablo pablo is offline
Miembro
 
Registrado: oct 2003
Ubicación: Argentina . Junin
Posts: 78
Reputación: 21
pablo Va por buen camino
unprepare

Cita:
Empezado por Lepe
Si tienes un Tquery con parámetros, el prepare hace que el motor de bases de datos deje la consulta "preparada", mejor dicho, compilada en el servidor, de esta forma la próxima consulta que se realice, solo tiene que cambiar los parámetros y buscar los datos, como ves la consulta se acelera.

Si haces consultas del tipo:

Código Delphi [-]
procedure boton1Click(...)
begin
consulta.sql.Clear;
consulta.sql.add ('select nombre from tabla where nombre = +edit1.text);
consulta.prepare;
consulta.open;

En este caso el prepare no sirve de mucho, ya que estas eliminando el sql, sería conveniente usar parámetros, y no modificar el sql

Código Delphi [-]
procedure boton1Click(...)
begin
consulta.close;
consulta.paramsbyname('nombre').AsString := edit1.text;
if not consulta.prepared then 
  consulta.prepare;
consulta.open;
Y ahora si, la consulta se agiliza (siempre y cuando el motor de BBDD lo permita).

Un saludo


Perfecto, entendi...
1)ahora, antes de hacer el close definitivo, convendria hacer unprepare, o delphi lo hace con el close?

2) En el caso de una consulta
close
params[0].....
prepare
open
lineas de codigo que usan la consulta
close

aqui entonces mucho sentido el prepare no tiene no?

un abrazo
pablo
__________________
Pablo Tello
Responder Con Cita