Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.20;
Скачать: CL | DM;

Вниз

Редактирование записи   Найти похожие ветки 

 
juice   (2005-01-21 12:24) [0]

Добрый день. Делаю выборку используя стандартный query. Пробегая и анализируя полученные записи нужно в некоторых из них установить значение некоего поля в 1. Как это сделать не используя SQL ? Сначала надо вызвать Query.Edit,
потом Query.FieldByName("fld01").Value := 1 ? Или в обратном порядке? И нужен ли компонент UpdateSQL ? Извините, просто нет базы и Delphi под рукой и не могу сам попробовать.


 
Vlad ©   (2005-01-21 12:30) [1]


> juice   (21.01.05 12:24)  

Естественно сначала переводим Query в режим редактирования
Query.Edit
Затем изменяем значение поля
Query.FieldByName("fld01").Value := 1
Затем сохраняем изменения в таблице
Query.Post


> И нужен ли компонент UpdateSQL ?

Зависит от того, какая СУБД и что у тебя в Query


 
juice   (2005-01-21 12:38) [2]

Спасибо. Субд Interbase.  

> что у тебя в Query

обычные поля - integer, varchar. Имелось в виду есть ли блоб-поля? Нет, их нет. Т.е. я так понял что UpdateSQl нужен только для блоб-полей?


 
Vlad ©   (2005-01-21 12:45) [3]


> juice   (21.01.05 12:38) [2]


> Т.е. я так понял что UpdateSQl нужен только для блоб-полей?

Причем тут блоб-поля? Я о них даже косвенно не упоминал.
TUpdateSQL + F1, там все подробно написано для чего он нужен.


 
juice   (2005-01-21 13:03) [4]

спасибо


 
msguns ©   (2005-01-21 13:22) [5]

>Vlad ©   (21.01.05 12:30) [1]

Если это нужно для визуализации (например, в гриде рисовать картинки в некоторой колонке в зависимости от значения каких-то полей записи), то не проще ли воспользоваться просто OnGetText датасета с нарисовкой соотвюпиктограммы или чего там надо в OnDrawColumnCell грида ?
Если же надо отредактить в самой таблице БД, то почему нельзя использовать SQL ?

Или я что-то недопонял ?


 
Vlad ©   (2005-01-21 13:30) [6]


> msguns ©   (21.01.05 13:22) [5]

Видимо недопонял :-) Или я тебя недопонимаю...


> не проще ли воспользоваться просто OnGetText датасета с
> нарисовкой соотвюпиктограммы или чего там надо в OnDrawColumnCell
> грида ?

К чему это? :-)
Автору вроде нужно было запись редактировать, и он не знает в каких случаях нужно использовать TUpdateSQL, а в каких можно без него обойтись, да еще про блобы зачем-то вспомнил, короче видать полная каша в голове (если я правильно понял автора).


 
juice   (2005-01-21 14:23) [7]

Да, каша действительно полная. Делаю так:

qClients.Edit;
qClients.FieldByName("idd").AsInteger := 0;
qClients.Post;

Та где пост выдает ошибку - EIBClientError Unsupported feature.

Может причина в :

qClients.UpdateObject = updClients;
updClients.ModifySQL = "update t002 set idkbo=:idkbo where id002=:id002"


Пробовал не устанавливать qClients.UpdateObject - пишет ошибку qClients : cannot modify a read-only dataset


 
Sergey13 ©   (2005-01-21 14:34) [8]

>updClients.ModifySQL = "update t002 set idkbo=:idkbo where id002=:id002"
И где тут поле IDD которое ты меняешь? По твоему запросу можно только idkbo менять.


 
juice   (2005-01-21 14:51) [9]

Сори, там idkbo и стоит - это я на форум не то запостил. У меня так:

qClients.Edit;
qClients.FieldByName("idkbo").AsInteger := 0 ;        qClients.Post;


 
Sergey13 ©   (2005-01-21 15:02) [10]

А с клиентами у тебя все нормально? Сервер какой и клиент?
EIBClientError - вроде не программа выдает, а клиент. Может тут нестыковка какая идет?



Страницы: 1 вся ветка

Текущий архив: 2005.02.20;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.045 c
4-1104130031
KostR
2004-12-27 09:47
2005.02.20
Как при помощи Delphi передать данные с микроконторллера на ЭВМ


4-1105342319
PEKAHT
2005-01-10 10:31
2005.02.20
Работа с принтерами


14-1106813878
McSimm
2005-01-27 11:17
2005.02.20
О "цензуре"


1-1107370563
GuAV
2005-02-02 21:56
2005.02.20
Исключение при создании формы.


1-1106647048
Muh
2005-01-25 12:57
2005.02.20
Помогите с инсталятором