Ver Mensaje Individual
  #6  
Antiguo 26-10-2010
PINO72 PINO72 is offline
Miembro
 
Registrado: oct 2004
Ubicación: Málaga - España
Posts: 40
Reputación: 0
PINO72 Va por buen camino
Exclamation

IBSQL.ExecQuery;
Es para insert, delete update o execute etc.

No es cierto : ExecQuery pone en marcha la consulta sea del tipo que sea.

"pero para para select debes usar open o active:= true;"

No es cierto : Open es una PROPIEDAD y no un PROCEDIMIENTO. Lo único que arroja es el resultado de conocer si el DATASET está abierto o cerrado. Encima es de sólo lectura (como es lógico). Te respondí que Open tambien ejecuta la consulta (a veces me despistan un poco..).

"pero igual tienes un error ya que debes preparar la consulta antes de pasarle el parametro"

"Igual tienes que preparar la consulta" = No sabes lo que dices.

Cuando se ejecuta una consulta muchas veces y lo único que cambia son los valores de búsqueda, para no cargar al servidor con contínuas aperturas y cierres de transacciones se pasan los parámetros a la consulta. El comando PREPARE no es obligatorio pero si aconsejable utilizarlo para preparar esos parámetros precisamente.

En una consulta que sólo se realiza una vez ( ya que después se destruye el IBSL) no es necesario.


Te aconsejo que mires antes de manuales antes de contestar algo que no sabes. Yo me tomo primero mi tiempo en comprobar el código. En caso de no dar con la solución acudo al club para ver si alguien me ayuda, lo que no me ayuda son respuestas a la ligera.


La magia no existe... Te remito a los artículos:
http://delphiallimite.blogspot.com/2...parmetros.html
http://delphiallimite.blogspot.com/2...con-ibsql.html


Saludos.

Última edición por PINO72 fecha: 26-10-2010 a las 13:18:59.
Responder Con Cita