Ver Mensaje Individual
  #1  
Antiguo 08-02-2007
Avatar de zcatzz
zcatzz zcatzz is offline
Miembro
 
Registrado: dic 2006
Posts: 48
Reputación: 0
zcatzz Va por buen camino
insertar n registros en una tabla automaticamente

Hola Buenas tardes a todos los del foro aqui estoy nuevamente para ver si me pueden ilumniar con sus conocimientos jeje.

Uso Delphi 5 y mysql

Fijense que mi caso es este, en la forma el usuario dice que quiere:

Fichas: N
Costo de Fichas : C

y entonces yo debo de generar estas fichas automaticamente...


en mi base de datos yo tengo 2 tablas

la tabla FICHAS, en la que guardo los campos de la ficha es decir, el costo de la ficha, id, horario etc...

la otra tabla se llama FICHASGENERADAS ahi es donde debo de insertar la cantidad de fichas que me haya pedido el usuario.

El problema que tengo es que me marca un error cuando "corro" el sig. codigo


DModulo.QInsertF.Active:=false;
DModulo.QInsertF.SQL.Clear;
DModulo.QInsertF.SQL.Text:='insert into fichas values(0,eriodo,:curso,:horario,:fecha,:hora,:salon,:costo,:idmpio,:total)';
DModulo.QInsertF.Parameters.ParamByName('periodo').Value:=idperiodo.Text;
DModulo.QInsertF.Parameters.ParamByName('curso').Value:=dbid.Text;
DModulo.QInsertF.Parameters.ParamByName('horario').Value:=horario.Text;
DModulo.QInsertF.Parameters.ParamByName('fecha').Value:=inicio + ' 00:00:00';
DModulo.QInsertF.Parameters.ParamByName('hora').Value:=inicio + ' '+ Horaexamen.text + ':00';
DModulo.QInsertF.Parameters.ParamByName('salon').Value:=salonexamen.Text;
DModulo.QInsertF.Parameters.ParamByName('costo').Value:=costofichas.Text;
DModulo.QInsertF.Parameters.ParamByName('idmpio').Value:=fidio001.municipio.text;
DModulo.QInsertF.Parameters.ParamByName('total').Value:=totalfichas.Text;
DModulo.QInsertF.ExecSQL;
DModulo.Tfichas.Close;
dmodulo.Tfichas.Open;
dmodulo.Tfichas.Last;

cont:=1;
totalF:=strtoint(totalfichas.Text);
while cont<=totalF do
begin

DModulo.QInsertFG.Active:=false;
DModulo.QInsertFG.SQL.Clear;
DModulo.QInsertFG.SQL.Text:='insert into fichasgeneradas values(0,:idficha)';
DModulo.QInsertFG.Parameters.ParamByName('idficha').Value:= 4;//dbidficha.text;
DModulo.QInsertFG.ExecSQL;
cont:=cont + 1;
end;
application.MessageBox('Fichas Generadas con exito','Fichas',mb_ok)


ERROR:

Código Delphi [-]Column Count Doesn't match value count at row 1


y se queda en la linea:

Código Delphi [-] DModulo.QInsertFG.ExecSQL;

que es lo que estoy haciendo mal?

Última edición por zcatzz fecha: 08-02-2007 a las 03:16:12.
Responder Con Cita