Ver Mensaje Individual
  #2  
Antiguo 17-11-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Los primeros errores son consecuencia secundaria del último y se deben a que al encontrarse una excepción el debugger no sabe dónde localizar el código fuente de las unidades donde se genera la excepción. Esto lo puedes corregir agregando las rutas a todos los subdirectorios de $(ZEOS)\src a Tools|Enviroment Options|Library|Browsing Path donde $(ZEOS) es la carpeta donde hayas instalado las componentes.

El problema real se debe a que tu consulta es incorrecta. Para empezar parece ser que utilizas parámetros (por los dos puntos : ) pero nunca los sustituyes antes de activar la consulta. Pero aún así, nom.text y ape.text no parecen tener sentido. Mi impresión es que nom y ape son componentes TEdit en tu formulario Delphi y estás tratando de asignar sus valores a la lista values de la consulta.

Recuerda que el lenguaje SQL es independiente del código Delphi y no se conocen el uno al otro. Dicho de otra forma, no puedes hacer referencia desde SQL a objetos de Delphi. Para SQL es como si nom y ape fuesen nombres de tablas en cuyo caso tendrían que estar declaradas en algún lugar de la consulta.

Si mi impresión es correcta entonces tu consulta debe ser así:

Código SQL [-]
insert into clientes (nombre, apellido) values (:un_nombre, :un_apellido)

Y debes usarla así:

Código Delphi [-]
ZConnection1.Connect; // sobra porque al activar el query se hace la conexión
ZQuery.ParamByName('un_nombre').AsString := nom.text;
ZQuery.ParamByName('un_apellido').AsString := ape.text;
ZQuery.Active := true;

// Saludos
Responder Con Cita