Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-12-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Lo que espera intToStr es un entero, sin embargo lo que hay en el Edit6 es un texto, de ahí que dé error.

Debes tener en cuenta los tipos de datos:
Imaginando que IDCLIENTE es un entero, el sql debe quedar así:
Código SQL [-]
INSERT INTO clientes (IDcliente,Nombre_Cliente,Apellido,Dirreccion,Cedula,Telefono)
VALUE (3, 'nombre1', 'apellido1', 'direccion 1', 'cedula', '23234223');
tal y como lo haces ahora mismo quedaría así:
Código SQL [-]
INSERT INTO clientes (IDcliente,Nombre_Cliente,Apellido,Dirreccion,Cedula,Telefono)
VALUE (3, nombre1, apellido1, direccion 1, cedula , 23234223);

Como ves no hay comillas simples para que el sql entienda que nombre1 es un texto, deberás usar algo así:
Código Delphi [-]
SQL.add('INSERT INTO clientes (IDcliente,Nombre_Cliente,Apellido,Dirreccion,Cedula,Telefono,)');
SQL.add ( 'VALUE ('+ edit6.text)+','+QuotedStr(edit1.Text)+','+QuotedStr(edit3.Text)+','+QuotedStr(edit4.text)+','+Quoted  Str(edit2.Text)+','+QuotedStr(edit4.Text)+')');

como ves es bastante lioso, es preferible usar parámetros en el sql

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

Última edición por Lepe fecha: 12-12-2006 a las 18:54:13.
Responder Con Cita
  #2  
Antiguo 12-12-2006
juanmaster juanmaster is offline
Miembro
 
Registrado: ago 2006
Posts: 24
Poder: 0
juanmaster Va por buen camino
Base de datos en access , idcliente lave primaria , y es numerica
Recuerda que no me graba , el codigo
Responder Con Cita
  #3  
Antiguo 12-12-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Pues muchas gracias, parece que me has leído la mente

La verdad, inicialmente creí que era problemas por los tipos de datos que enviabas y los que la base de datos esperaba, así que hice las preguntas a las cual has contestado.

Revisando el código entendí por donde iban los tiros y edité mi mensaje cambiándolo totalmente, mientras redactaba el mensaje se ve que has llegado.

Bueno espero que ahora si leas mi mensaje anterior.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 12-12-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola juanmaster
Segun veo:
Código Delphi [-]
procedure TFclienteN.BitBtn1Click(Sender: TObject);
begin
with Query1 do
begin
close;
sql.clear;

SQL.add('INSERT INTO clientes (IDcliente,Nombre_Cliente,Apellido,Dirreccion,Cedula,Telefono,)');
SQL.add ( 'VALUE ('+ inttostr (edit6.text)+','+edit1.Text+','+edit3.Text+','+edit4.text+','+edit2.Text+','+edit4.Text+')');

end;
No se porque pero me suena que cierras, la tabla y luego tratas de insertar.
Para mi nunca insertaras nada en un query o tabla cerrado.
Yo lo haria asi:
Código Delphi [-]
procedure TFclienteN.BitBtn1Click(Sender: TObject);
begin
 Query1.Close;
 Query1.sql.clear;
 Query1.Open;
 Query1.SQL.TEXT:= 'INSERT INTO clientes (IDcliente,Nombre_Cliente,Apellido,Dirreccion,Cedula,Telefono)' +
 'VALUE ('+ inttostr (edit6.text)+','+edit1.Text+','+edit3.Text+','+edit4.text+','+edit2.Text+','+edit4.Text+')';
end;
Puede ser que me equivoque en el open, si no camina asi, ponlo antes del end.
Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Grabar En SQL Campos Decimales, Solo me graba enteros? Con Codigo freddiaz07 SQL 13 21-09-2006 18:44:34
Grabar En SQL Campos Decimales, Solo me graba enteros? freddiaz07 SQL 2 07-09-2006 16:24:04
Me cierra Delphi totalmente al activar Query JamesBond_Mx SQL 2 12-01-2006 15:47:39
lookup + dbgrid: no graba jonmendi Conexión con bases de datos 4 12-01-2006 08:21:53
Cuando trabajan dos usuarios simultaneos solo graba la factura de uno tulio Firebird e Interbase 11 28-10-2003 12:10:34


La franja horaria es GMT +2. Ahora son las 04:02:44.


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