![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ошибка сохранения записи(данные модифицированы).Как игнорировать? [D6, MSSQL]
HabarovSergey © (2006-01-24 17:17:00)Подскажи пожалуйста - использую TADOQuery.Post вылетает ошибка "Row cannot be located for updating. Some values may have been changed since it was last read" - как заставить TADOQuery всеравно записать ету запись и игнорировать такого рода ошибку?
TADOQuery использую с TADOConnection
HabarovSergey (2006-01-26 13:28:00) [1]заюзал динамические своййства - теперь все нормально
проблема решена
sniknik (2006-01-24 19:58:00) [2]это точно
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1138017617&n=1
нехочется повторять одно и тоже.
Val (2006-01-24 18:32:00) [3]думается мне - ответы надо читать.
HabarovSergey (2006-01-24 18:22:00) [4]кажетса мне тут динамические свойства нада заюзать
http://www.delphikingdom.com/asp/viewitem.asp?UrlItem=/helloworld/ado02.htm
Desdechado (2006-01-24 18:09:00) [5]> есть ключ IDENTITY
это не ключ, а тип для автогенерации чисел
ключ - это PRIMARY KEY или UNIQUE CONSTRAINT
а в твоей ситуации именно это и не дает изменить запись, поскольку при отсутствии ключа запись ищется сервером ПО ВСЕМ ПОЛЯМ, чтоб положить в нее твои изменения, а поля были изменены, о чемтебе и сообщается
HabarovSergey (2006-01-24 17:59:00) [6]возможно я не полноценно обяснил вопрос.
имеетса ввиду - делаю TADOQuery.Post, но данные в этой записе ( не в поле ключа) уже были изменены после открытия рекордсета (TADOQuery.Open) другим приложением. Так вот когда я делаю TADOQuery.Post вываливает такая ошибка и дельфя наотрез отказываетса запись сохранять.
для примера сейчас открыл для ентерпрайсе менеджера выбрал одинаковым запросом у них одну и туже запись по ID. Поменял поля (не ID) в первом ентерпрайсе, далее поменял во втором. далее во втором сохраняю-сохраняетса, а в первом вываливает вопрос - мол данные уже были изменены действительно но ли сохранить, или перечитать и снова перейти к редактированию. тоесть возможность сохранения в MS SQL при уже измененных записях видимо есть, только вот как это использовать в TADOQuery. Те данные которые были уже изменены после чтения рекордсета пусть теряет и перезапишет моими новыми - главное что бы записала
HabarovSergey (2006-01-24 17:51:00) [7]есть ключ IDENTITY инкрементируетса на единицу
Desdechado (2006-01-24 17:29:00) [8]завести в таблице ключ