PDA

Ver la Versión Completa : Campo COUNT incorrecto?


Duc
06-07-2005, 20:57:28
hola,

tengo un problema con una consulta de SQL. Mi problema es que intento ejecutar un

INSERT INTO tabla(campo1,campo2,....) VALUES(valor1,valor2,...)

y me sale un error diciendo: "Campo COUNT incorrecto."
Alguien me podría ayudar?

Gracias

delphi.com.ar
06-07-2005, 21:00:36
El error no lo tengo visto, pero... ¿La cantidad de campos es la misma que la cantidad de valores? ¿De qué motor se trata? ¿Podrías mostrarnos la consulta del error?

Duc
06-07-2005, 21:09:13
yo también he pensado en la diferencia de campos, los he contado como 5 veces y me parece que están igual. Hay 51. La consulta es muy larga, pero la inserto al final a ver si os puede indicar algo. Uso ADO conectado a una Base de Datos Access.

Muchísimas gracias.


INSERT INTO Esc(Art,TotProd,Tipo,Fijado,MPMat,
MpManoObra?,MPManoObra,MPIns,MPMerma,
MPTotal,HMerma,HHorno,HMolde,Hcalent,HEnfr,
HOper,Hcocc,HDesm,HOperTemp,HIns,HKg,HMat,
HmanoObra,HTotal,ECaudalA,ECaudalB,EInyec,
EFrag,ESec,EIns,EKg,EMat,EManoObra,ETotal,
EMerma,AMerma,AMat,AManoObra,ATotal,AIns,
LMerma,LPalet,LUnidPal,LTrans,LUnidCam,LCostCam,
LCostTrans,LIns,LMat,LManoObra,LTotal)
VALUES('389','0','0','
0','0','1','0','','0','
0','0','3','1','0','0','0','
0','0','0','','0','0','0','0','
0','0','0','0','0','','0','0','
0','0','0','0','0','0','
0','','0','0','0','0','0','','0','
0','','0','0','0')

roman
06-07-2005, 21:29:10
Yo veo 51 campos y 52 valores

EDITO

Ahora estoy seguro, te sobra un valor

// Saludos

roman
06-07-2005, 21:36:34
Una pregunta:

¿No podrías establecer valores por defecto en la estructura dela tabla y así ahorrate unos cuantos campos?

// Saludos

delphi.com.ar
06-07-2005, 21:38:10
Yo veo 51 campos y 52 valores
Yo conté igual...


INSERT INTO Esc (
/*01*/ Art,
/*02*/ TotProd,
/*03*/ Tipo,
/*04*/ Fijado,
/*05*/ MPMat,
/*06*/ MpManoObra?, /* Que es ese ? */
/*07*/ MPManoObra,
/*08*/ MPIns,
/*09*/ MPMerma,
/*10*/ MPTotal,
/*11*/ HMerma,
/*12*/ HHorno,
/*13*/ HMolde,
/*14*/ Hcalent,
/*15*/ HEnfr,
/*16*/ HOper,
/*17*/ Hcocc,
/*18*/ HDesm,
/*19*/ HOperTemp,
/*20*/ HIns,
/*21*/ HKg,
/*22*/ HMat,
/*23*/ HmanoObra,
/*24*/ HTotal,
/*25*/ ECaudalA,
/*26*/ ECaudalB,
/*27*/ EInyec,
/*28*/ EFrag,
/*29*/ ESec,
/*30*/ EIns,
/*31*/ EKg,
/*32*/ EMat,
/*33*/ EManoObra,
/*34*/ ETotal,
/*35*/ EMerma,
/*36*/ AMerma,
/*37*/ AMat,
/*38*/ AManoObra,
/*39*/ ATotal,
/*40*/ AIns,
/*41*/ LMerma,
/*42*/ LPalet,
/*43*/ LUnidPal,
/*44*/ LTrans,
/*45*/ LUnidCam,
/*46*/ LCostCam,
/*47*/ LCostTrans,
/*48*/ LIns,
/*49*/ LMat,
/*50*/ LManoObra,
/*51*/ LTotal)
VALUES
(
/*01*/ '389',
/*02*/ '0',
/*03*/ '0',
/*04*/ '0',
/*05*/ '0',
/*06*/ '1',
/*07*/ '0',
/*08*/ '',
/*09*/ '0',
/*10*/ '0',
/*11*/ '0',
/*12*/ '3',
/*13*/ '1',
/*14*/ '0',
/*15*/ '0',
/*16*/ '0',
/*17*/ '0',
/*18*/ '0',
/*19*/ '0',
/*20*/ '',
/*21*/ '0',
/*22*/ '0',
/*23*/ '0',
/*24*/ '0',
/*25*/ '0',
/*26*/ '0',
/*27*/ '0',
/*28*/ '0',
/*29*/ '0',
/*30*/ '',
/*31*/ '0',
/*32*/ '0',
/*33*/ '0',
/*34*/ '0',
/*35*/ '0',
/*36*/ '0',
/*37*/ '0',
/*38*/ '0',
/*39*/ '0',
/*40*/ '',
/*41*/ '0',
/*42*/ '0',
/*43*/ '0',
/*44*/ '0',
/*45*/ '0',
/*46*/ '',
/*47*/ '0',
/*48*/ '0',
/*49*/ '',
/*50*/ '0',
/*51*/ '0',
/*52*/ '0')

Duc
07-07-2005, 17:39:28
Muchas gracias por contar, y siento el error tonto :(.

El problema de la desigualdad de campos se solucionó y siguió saliendo el error. en realidad el problema venía del campo con ?, supuse que aunque siendo un caracter extraño, si se manda con [] funcionaría (como pasa con otros). A de más, si voy al Acces y pongo la consulta (con y sin []) me funciona perfectamente con el símbolo ?.

Por cierto, lo de los valores por defecto, en realidad eso era la cadena solucionada, es decir, en el programa todos los valores los cojo de objetos como Edits.

Gracias. :)