TQuery, udate поля
имеем таблицу (DBF), надо изменить значение поля по условиям....долго объяснять...лучше код приведу...
1 Вариант
TQuery *QueryParus;
QueryParus= new TQuery(NULL);
QueryParus->DatabaseName="d:";
QueryParus->Close();
QueryParus->SQL->Clear();
// тут запрос на требуемую запись
QueryParus->SQL->Add("select * from 'd:\\0810033.dbf' where code=3008 and Timeopr=(select max(Timeopr) from 'd:\\0810033.dbf')");
QueryParus->Open();
QueryParus->UpdateMode=true;
QueryParus->UpdateRecord();
QueryParus->FieldByName("Value")->AsFloat = 99999;
как результат ошибка - "Dataset not in edit or insert mode" ((
2 Вариант
TQuery *QueryParus;
здесь в самом SQL запросе вставим команду update
QueryParus->SQL->Add("update 'd:\\0810033.dbf' set VALUE =99999 where code=3007 and Timeopr=(select max(Timeopr) from 'd:\\0810033.dbf')");
QueryParus->ExecSQL();
как результат - "invalid use of keyword" Token: value
то есть, я понял VALUE, есть служебное слово, поскольку анологичная операция с другими полями все делает красиво...
вот такой вот пирожок...как обойти...? поможите кто чем может, люди умные...)
(при этом соблюдая регистр)
select "VALUE" from NDS where id_nds=20
Цитата:
Originally posted by SEDEGOFF
Если название совпадает с зарезервированными словами то его нужно заключать в кавычки
(при этом соблюдая регистр)
select "VALUE" from NDS where id_nds=20
Если название совпадает с зарезервированными словами то его нужно заключать в кавычки
(при этом соблюдая регистр)
select "VALUE" from NDS where id_nds=20
Ды как тока не игрался..."invalid use of keyword" Token: =99999 ..теперь он вообще его не видит....(((
Цитата:
Originally posted by Fidel
Ды как тока не игрался..."invalid use of keyword" Token: =99999 ..теперь он вообще его не видит....(((
Ды как тока не игрался..."invalid use of keyword" Token: =99999 ..теперь он вообще его не видит....(((
Попробуй так
SELECT NDS."VALUE" from NDS where NDS."id_nds"=20
Цитата:
Originally posted by EUGIX
Попробуй так
SELECT NDS."VALUE" from NDS where NDS."id_nds"=20
Попробуй так
SELECT NDS."VALUE" from NDS where NDS."id_nds"=20
уррра...зыррработала...да уж...устал бы тыкать...)
спасиба...