Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-03-2007
deadsystems deadsystems is offline
Miembro
 
Registrado: mar 2007
Posts: 12
Poder: 0
deadsystems Va por buen camino
¿Por qué no inserta?

Hola, amigos del foro.

Tengo una aplicación donde quiero guardar en una base de datos en MS Access los datos que se introducen en un formulario que contiene edit's.
Cuando oprimo el boton guardar se debe ejecutar el siguiente código SQL

Código SQL [-]
  With Datamodule6 do begin
    With Guarda_Colega do begin
      Close;
      Active := True;
      With SQL do begin
        Clear;
        Text := 'INSERT INTO TColegas (indicativo, nombre, apellido1, apellido2) Values (:indicativo, :nombre, :apellido1, :apellido2)';
        ParamByName('indicativo').Value:=edit9.Text;
        ParamByName('nombre').Value:=edit5.Text;
        ParamByName('apellido1').Value:=edit6.Text;
        ParamByName('apellido2').Value:=edit7.Text;
        ExecSQL;
      end;
    end;
  end;

Sin embargo, cuando ejecuto el código me devuelve un error.

¿Qué estoy haciendo mal?

Saludos.
Responder Con Cita
  #2  
Antiguo 07-03-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Que componentens usas>? ADO?, Si es el caso, antes de ParamByName va Parameter. (Parameter.ParamByName('nombre').Value)
Si es otro componente, entonces en vez de usar Value debes definirle el tipo de datos correspondiente, Por ejemplo AsString o AsInteger,...
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #3  
Antiguo 07-03-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por deadsystems
Sin embargo, cuando ejecuto el código me devuelve un error.
¿Y el error es?????????
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 07-03-2007
deadsystems deadsystems is offline
Miembro
 
Registrado: mar 2007
Posts: 12
Poder: 0
deadsystems Va por buen camino
Ahora el error que me devuelve es "Field value requiered. Field: indicativo."
Responder Con Cita
  #5  
Antiguo 07-03-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Coloca un Break y haz un depurar, así te darás cuenta que edit9.Text; debe estar vació...
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #6  
Antiguo 07-03-2007
deadsystems deadsystems is offline
Miembro
 
Registrado: mar 2007
Posts: 12
Poder: 0
deadsystems Va por buen camino
El error esta en la línea:

Código Delphi [-]
   With SQL do begin

En el datamodule que utilizo tengo un Query donde en la propiedad SQL tengo:

Código SQL [-]
insert into TColegas (indicativo, nombre, apellido1, apellido2)
Values (indicativo, nombre, apellido1, apellido2)

saludos.
Responder Con Cita
  #7  
Antiguo 07-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
El error ahora es obvio la sql debe ser:
Código SQL [-]
insert into TColegas (indicativo, nombre, apellido1, apellido2)
Values (:indicativo, :nombre, :apellido1, :apellido2)

para indicar que cada "value" es un parámetro que debe ser suministrado con Parambyname.

PD: ¿Me llevo el gallifante?

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Inserta Registros maestro/detalle Vlady Firebird e Interbase 2 28-10-2006 04:35:48
Inserta fecha actual zvf OOP 4 06-04-2006 01:23:16
Como se inserta el valor de un checkbox? Ivan_25 C++ Builder 4 04-11-2005 11:02:51
procedimiento que no inserta ni actualiza jzginez Firebird e Interbase 2 12-09-2005 17:34:36
No me inserta despues de un registro con Ñ o tilde JoanKa Firebird e Interbase 2 04-03-2005 09:06:17


La franja horaria es GMT +2. Ahora son las 16:02:10.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi