0

私はこのクエリを書きました:

      Ado_All.Parameters.Clear;
      Ado_All.SQL.Clear;
      Ado_All.SQL.Add('update Tbl_Customer_Services set fk_Customer =:0, fk_Services =:1, Start_Date =:2, End_Date=:3');
      Ado_All.SQL.Add(' ,Hesab =:4, Domain_Name =:5,Comments =:7 where Customer_Services_Id =:6 ');       
      Ado_CmbNames.MoveBy(Cmb_Customer.ItemIndex);
      Ado_All.Parameters[0].Value := Ado_CmbNames.FieldByName('Customer_Id').AsString;
      Ado_All.Parameters[1].Value := '1';
      Ado_All.Parameters[2].Value := '10/10/2010';
      Ado_All.Parameters[3].Value := '10/10/2010';
      Ado_All.Parameters[4].Value :=Txt_Mali.Text;
      Ado_All.Parameters[5].Value := Txt_Domin.Text;
      Ado_All.Parameters[6].Value := ADOQuery2.FieldByName('Customer_Services_Id').AsString;
      Ado_All.Parameters[7].Value := Txt_Domin.Text;
      Ado_All.ExecSQL;

Ado_All は AdoQuery です。しかし、次のエラーがあります: ここに画像の説明を入力

何か案が?

4

1 に答える 1

0

:SQL ステートメント内のコロン文字 ( ) が問題の原因であると思われます。= ?SQL テキストのパラメーター値のプレースホルダーとして単純に使用してみてください。

UPDATE Tbl_Customer_services SET fk_Customer = ?, fk_Services = ?, ...

また、パラメーター値は、SQL ステートメントに表示される正確な.Parameters順序でコレクションに追加してください。

于 2013-05-02T09:13:37.967 に答える