SQL:更新语句:语法错误

时间:2013-09-05 12:26:53

标签: sql delphi

Votes列defualt值为0.每次单击按钮时,它必须将我想要的任何值添加到我想要的特定行。

我的错误是:

  

语法错误:更新语句。 [[Delphi]]

这是我的代码:

procedure TForm4.BitBtn1Click(Sender: TObject);    
var     
  spinval : integer;
begin
  spinval := SpinEdit1.value;``

  // Candidatetable.Insert;
  // Candidatetable['Votes'] := Candidatetable['Votes'] + spinval;

  ADOQuery1.Active := false;
  ADOQuery1.SQL.Text := 'Update Candidate_table set votes = ''' +
                        Candidatetable['Votes'] + IntToStr(spinval) +
                        ''' where Name = ''' + DBLookupComboBox1.Text + '''';

  ADOQuery1.ExecSQL;
  ADOQuery1.Active := false;
  ADOQuery1.SQL.Text := 'Select * from Candidate_table';
  ADOQuery1.Active := true;

  MessageDlgPos('Thank you for voting. You will be logged out.' , mtInformation, [mbOK], 0, 1000, 500);

  Form4.Hide;
  Form2.Show;
end;

PlEASE HELP =)

感谢。

1 个答案:

答案 0 :(得分:5)

我认为这就是你要找的东西。

  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('Update Candidate_table');
  ADOQuery1.SQL.Add('set votes = votes + :Votes');
  ADOQuery1.SQL.Add('where Name = :Name');

  ADOQuery1.Parameters[0].Value := spinval;
  ADOQuery1.Parameters[1].Value := DBLookupComboBox1.Text;