hallo ive bekam eine SQL mit dem folgenden Code,fehlender Operator oder Semikolon Fehlermeldung
SELECT SUM (Travel_Cost)
VON Reisen
WHERE Job_ID =: MCODE
, um Erlaube dem Benutzer einen Wert von einer Edit-Komponente einzugeben, die an die SQL übergeben wird. Ich habe auch den folgenden Code,
procedure TfrmExpenses.Button3Click(Sender: TObject);
begin
ADOQuery1.active:=false;
ADOQuery1.Parameters('mcode').AsString:=Edit1.Text;
ADOQuery1.active:=true;
end;
Ich halte die Fehlermeldung
"fehlender Operator oder Semikolon"
wenn ich zu kompilieren versuchen, irgendwelche Vorschläge zu bekommen?
Gibt es eine bestimmte Zeile, wo Sie das bekommen? Dieser Code sieht gut aus, aber vielleicht hast du noch mehr. Der Compiler sollte Ihnen die genaue Zeile mitteilen. – GolezTrol
Die Eigenschaft 'Parameters' ist vom Typ' TParameters' und nicht 'indiziert'. Daher können Sie eine Zeichenfolge nicht als 'Index' oder 'Parameter' übergeben. Ich habe nie mit Datenbanksteuerelementen gearbeitet, also habe ich keine Ahnung, worum es eigentlich geht, aber vom Standpunkt der Syntax aus gesehen zum Beispiel: ADOQuery1.Parameters.ParamValues ['mcode']: = 'Test'; 'and' ADOQuery1.Parameters.ParamByName ('mcode'). Value: = 'text'; 'kompiliert. –
Cont mit was Andreas gepostet, versuchen Sie ParamByName anstelle von Parameter. Stellen Sie außerdem sicher, dass der Parametereingabetyp "Mcode" dem Feldtyp Job_ID entspricht. Wenn beide Ganzzahlen sind, legen Sie den Parametereingabetyp auf "Integer" fest und konvertieren Sie den Wert "edit1.text" während der Zuweisung in Integer. –