Cita:
Empezado por daragor
Hola amigos, como hago para la sintaxis de este caso en insersion SQL. Aclaro que estoy usando un datamodule llamado DM y la instruccion sql del query es:
Código:
INSERT INTO articulos (nom,pc,pv,stk) VALUES (:NOM,:PC,:PV,:STK)
El codigo, A y M son variables del caso:
Código Delphi [-]
procedure TForm1.grabaClick(Sender: TObject);
begin
case oper of
'A': DM.QAlta_art.ParamByName('NOM').AsString:= Trim(nom.Text);
DM.QAlta_art.ParamByName('PC').AsFloat:= StrToFloat(pc.Text);
DM.QAlta_art.ParamByName('PV').AsFloat:= StrToFloat(pv.Text);
DM.QAlta_art.ParamByName('STK').AsInteger:= StrToInt(stk.Text);
DM.QAlta_art.ExecSQL;
'M': ShowMessage('Codigo de Edicion de articulo.');
end;
end
Me da el siguiente error al compilar:
unit1.pas(34,35) Hint: Parameter "Column" not used
unit1.pas(79,68) Error: Constant and CASE types do not match
unit1.pas(79,68) Error: Constant Expression expected
unit1.pas(79,68) Fatal: Syntax error, ":" expected but ";" found
|
En realidad, hay algo que no nos muestras, porque no se sabe a qué se refiere eso de Column. Por otra parte, múltiples sentencias en un mismo caso de un
case deben ir en un bloque begin-end.
No tengo claro que intentas hacer. ¿Porqué juntar en un mismo botón el código de inserción y el de modificado?
pd: el nombre de los parámetros es indistinto.
// Saludos