![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Can't modify field [D7, postgresql]
Tommy © (2008-05-23 12:23:00)Привет всем!
Работаю с postgresql через ADO&ODBC.
Почему когда
Adoquery1.SQL.Clear;
Adoquery1.SQL.Add('select * from personaldata, system, professions, departments
where
perddepartmentid=departid and
perdprofessionid=profid and
perdsystem=systemid
order by perdlastname');
Adoquery1.Open;
Adoquery1.Edit;
Adoquery1.FieldByName('perdname').AsString := 'Hello';
Adoquery1.post;
Adoquery1.Close;
выдает сообщение
"Can't modify field perdname"
а вот когда
Adoquery1.SQL.Clear;
Adoquery1.SQL.Add('select * from personaldata');
Adoquery1.Open;
Adoquery1.Edit;
Adoquery1.FieldByName('perdname').AsString := 'Hello';
Adoquery1.post;
Adoquery1.Close;
все работает нормально???
sniknik (2008-05-23 17:01:00) [1]> а я пока только с мсскл не напарывался на косяки.
"косяк"
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1211454422&n=1
Reindeer Moss Eater (2008-05-23 16:38:00) [2]еще бы каждому серверу по некривому провайдеру, и вообще было бы счастье. а я пока только с мсскл не напарывался на косяки.
sniknik (2008-05-23 16:24:00) [3]> а как там это реализовано?
простой настройкой, у датасета ставишь LockType = ltBatchOptimistic и все.
кстати изза многовариантности настроек и разной изза этого работы многие тут начинают поиски других компонент (видел небось?)... тнутся, не работает как ожидают, и тут же вопрос на форум "где найти, то сто работает вот так ...?", а надо не метаться и искать неведомое, а лучше изучать то что есть. под носом буквально.
Reindeer Moss Eater (2008-05-23 16:11:00) [4]а как там это реализовано? я имею ввиду не само адо как таковое, а классы TADO....
sniknik (2008-05-23 16:09:00) [5]> был бы в делфийском адо механизм cached updates - было бы можно и в первом случае
он там есть.
там вообще много всего есть... имхо, самые многофункциональные компоненты для работы с базами. (если и есть более то я не видел, хотя тестил многое).
Tommy (2008-05-23 13:14:00) [6]Да нет, ненадо... спасибо большое за совет :)
Reindeer Moss Eater (2008-05-23 12:57:00) [7]чо, все по новой расжевывать?
Tommy (2008-05-23 12:55:00) [8]А что делать если с этим ADOQuery связан DBEDIT.... в случае сложного query, DBEdit даже не активен, то есть не дает ничего писать!
Reindeer Moss Eater (2008-05-23 12:49:00) [9]был бы в делфийском адо механизм cached updates - было бы можно и в первом случае. а так - рисуй форму редактирования, а не в гриде редактируй необновляемый набор данных.
Anatoly Podgoretsky (2008-05-23 12:45:00) [10]> Tommy (23.05.2008 12:42:04) [4]
Ты наверно не знаешь, что кроме SELECT еще есть и INSERT/UPDATE и транзакции.
Tommy (2008-05-23 12:42:00) [11]ну а если нужно работать со всеми таблицами одновременно? То есть хочу изменять поля с разных таблиц...
Reindeer Moss Eater (2008-05-23 12:39:00) [12]а ты на второй случай посмотри
Tommy (2008-05-23 12:37:00) [13]а как сделать чтоб имел понятие?
Reindeer Moss Eater (2008-05-23 12:26:00) [14]потому что в первом случае адо без понятия какую таблицу апдейтить