Я использовал Inserts, выбирает, обновляет, удаляет без проблем всюду по программе, но по какой-то причине этот специфический раздел заставляет его исключать и не запускать SQL, который я посылаю.
Я пытаюсь "ОБНОВИТЬ ЗНАЧЕНИЕ РАЗДЕЛА РАЗДЕЛА (AreaID) ('+ IntToStr (ActClient.AreaID) +')
Раздел с идентификатором «iCount» существует в обязательном порядке. ActClient.AreaID имеет значение «2», и его нулевые данные перезаписываются в таблице «SectionTable».
В чем здесь проблема?
OpenDatabase(slDb);
sltb:=sldb.GetTable('SELECT * FROM SectionTable WHERE SectionID='+IntToStr(iCount));
OutputDebugString(PAnsiChar(sltb.FieldAsString(sltb.FieldIndex['SectionID'])+sltb.FieldAsString(sltb.FieldIndex['Gender'])+sltb.FieldAsString(sltb.FieldIndex['CompetitionID'])));
sSQL := 'UPDATE SectionTable(AreaID) VALUES ('+IntToStr(ActClient.AreaID)+') WHERE SectionID='+IntToStr(iCount);
sldb.ExecSQL(sSQL);
CloseDatabase(slDb);
Я получаю это сообщение об ошибке при запуске.
---------------------------
Debugger Exception Notification
---------------------------
Project CompetitionServer.exe raised exception class ESQLiteException with message 'Error executing SQL.
Error [1]: SQL error or missing database.
"UPDATE SectionTable(AreaID) VALUES (2) WHERE SectionID=2": near "(": syntax error'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------