procedure TMain.Button_LvlUpClick(Sender: TObject); var Calc1 :Integer; Calc2 :Integer; begin FirstRun := False; Calc1 := 0; Calc2 := 0; OrderID:= SelectedID; EUorUS:= Grid.Fields[1].AsString; ServerName := Grid.Fields[2].AsString; CharName:= Grid.Fields[3].AsString; CharClass:= Grid.Fields[4].AsString; StartLevel:= IntToStr(Grid.Fields[5].AsInteger); EndLevel := IntToStr(Grid.Fields[6].AsInteger); CurrentLevel := (Grid.Fields[7].AsInteger); Progress:= IntToStr(Grid.Fields[8].AsInteger); Handler:= Grid.Fields[9].AsString; CurrentLevel:= CurrentLevel + 1; Calc1:= StrToInt(EndLevel) - StrToInt(StartLevel); Calc2:= (StrToInt(Progress) - (Calc1) - 1)*-1; Progress:= IntToStr(Calc2); ADOQuery1.Close; ADOQuery1.Parameters.Clear; ADOQuery1.Parameters[0].Value := Progress; ADOQuery1.Parameters[1].Value := CurrentLevel; ADOQuery1.Parameters[2].Value := OrderID; ADOQuery1.SQL[0] := 'INSERT INTO Orders (Progress, CurrentLevel) VALUES(:Progress, :CurrentLevel) WHERE OrderID = :OrderID'; ADOQuery1.ExecSQL; ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('SELECT Orders.OrderID, Orders.[EU/US], Orders.ServerName, Orders.CharName, Orders.CharClass, Orders.StartLevel, Orders.EndLevel, Orders.CurrentLevel, Orders.Progress, Orders.Handler FROM Orders WHERE Orders.OrderID = :OrderID'); ADOQuery1.Open; end;
Delphi SQL Parameter Problems
Started by
Jack Wetson
, Jul 11 2008 06:11 AM
#1
Posted 11 July 2008 - 06:11 AM
#2
Posted 13 July 2008 - 10:36 AM
BUMP? ANYONE?
#3
Posted 14 July 2008 - 10:25 PM
Hello Jack,
Could you tell us the exact error message you are receiving?
Also, do you know which statement is causing the error?
You can insert statements similar to the following to determine where it's coming from, if you don't have a debugger:
Regards,
Ax
Edit: On closer inspection, it looks like you haven't set the OrderID parameter for the SELECT query. Try adding the following line of code:
Could you tell us the exact error message you are receiving?
Also, do you know which statement is causing the error?
You can insert statements similar to the following to determine where it's coming from, if you don't have a debugger:
ShowMessage('Test 1');
Regards,
Ax
Edit: On closer inspection, it looks like you haven't set the OrderID parameter for the SELECT query. Try adding the following line of code:
ADOQuery1.Parameters[0].Value := OrderID;
Similar Topics
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users