Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 02-06-2016
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: 19.449
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 Bant Ver Mensaje
Este código se ejecuta al presionar un boton, el error me lo da después del ExecSQL; Me dice:
'There are fewer columns in the INSERT Statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.'

Lo cual no lo pillo si especifico el numero de datos que introduzco y solo pongo esos valores por que me ha salido esto? Además cuando lo intente con QuotedStr me dio error que no se puede convertir de tipo varchar a numeric, claro está pero no me salia este No entiendo
A veces este error pasa cuando uno de los parámetros incluye una coma decimal (no se si es tu caso). Eso hace que la SQL final tenga más parámetros de los esperados.
En estos casos lo mejor es utilizar parámetros:

Código Delphi [-]
dm2.ADOTotal.Active := False;
dm2.ADOTotal.Close;
dm2.ADOTotal.SQL.Text := 'insert into FacturaTotal(ID, Cantidad, Subtotales, ITBIS, Total) values (:IDE, :PRODUCTOS, :SUBTOITAL, :ITBIS, :TOTALES);';
// Asignar parámetros
dm2.ADOTotal.Parametres.ParamByName('IDE').Value := Ide;
dm2.ADOTotal.Parametres.ParamByName('PRODUCTOS').Value := Productos;
...
dm2.ADOTotal.Parametres.ParamByName('TOTALES').Value := totales;
dm2.ADOTotal.ExecSQL;
dm2.ADOTotal.Active := True;

De esta forma te olvidas de los separadores, de las comas,...
Ya se encargará el sistema de colocar cada cosa con su formato para que funcione.

NOTA: Te he puesto el código de memoria.
__________________
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
 



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
Error Insert SQL!! XcamX SQL 15 13-02-2013 10:19:38
Error con insert Paulao Varios 1 27-04-2010 19:50:55
error en insert into arespremium MySQL 0 30-08-2007 23:06:59
Error en insert into rhasshid SQL 4 23-04-2007 07:31:23
Sql Error: error cannot insert a duplicate......................... inexperto SQL 2 04-06-2004 12:54:59


La franja horaria es GMT +2. Ahora son las 07:32:23.


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