| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Не удается найти строку для обновления. |
| Автор: Burka 9.10.2007, 15:55 | ||
Такая проблема: в программе, добавляю строчку в БД(она оказывается последней в списке) и редактирую, табуляцией перемещаюсь по колонкам, но когда ТАб нажимаешь на последней колонке возникает ошибка
Подскажите, что сделать можно? Использую AdoTable( |
| Автор: Данкинг 9.10.2007, 19:07 |
| Помогает закрыть-открыть adodataset. |
| Автор: Burka 9.10.2007, 19:34 |
| ммм не тот вариант который мне нужен.. а вообще помогает смена фокуса с дбгрида, но мне нужно узнать именно причину ошибки. А дедовскими способами не хочу |
| Автор: ALeXandrK 9.10.2007, 20:11 |
| Все зависит от параметров CursorLoaction и IsolationLavel. Описывать все их варианты и что они значат не буду (их много), поищи в интернете. У меня лично стоит CursorLoaction = clUseClient, IsolationLavel = ilUnspecified; Так ты говоришь, что я "сервер" и мне не нужно строго следить за транзакциями и др. штучками, т.к. я один и базу, кроме меня, никто не изменяет. Соотвтетсвенно, тебе он говорит все правильно, т.к. не знает были ли изменения или нет... |
| Автор: Burka 9.10.2007, 22:22 |
| Выставил все свойства так, не помогло.. Эта же ошибка выскакивает, если сделать так: добавить строку, редактировать ее и применить метод Next к соответствующему датасету. (если хотите проверьте, должна быть ошибка=) ) Я вот думаю может сохранить вручную при редактировании как-нибудь, но Post не работает т.к. датасет находится не в Edit-моде.. |
| Автор: SergeBS 10.10.2007, 07:25 | ||||
Burka,
На DelphiKingdom - статья насчет ADO. Там описано зачем. Если нет уникального ключа - не поможет ничего. ALeXandrK,
Если бы только от них... ЭТО от них не зависит. |
| Автор: Burka 10.10.2007, 11:38 | ||
SergeBS, у меня "adResyncAll" не известно. мож че подключить надо?
Уникальный ключ, это случаем не тоже самое, что и ключевое поле? А то я путаюсь уже. |
| Автор: Savek 10.10.2007, 13:07 |
| модуль ADOInt adResyncAll = $0000000F; |
| Автор: ALeXandrK 10.10.2007, 13:41 | ||||||||
Мне как раз
не помогал, когда была такая же проблема, а вот указанные мной свойства тут же помогли. |
| Автор: Burka 10.10.2007, 16:02 |
| Не помогло( |
| Автор: Burka 10.10.2007, 16:27 | ||
Вот это вроде помогло, только грузить чуть подольше после клика мышкой:
|
| Автор: SergeBS 11.10.2007, 07:30 |
| Burka, Прочитай все-таки статью "Немного об использовании ADO в Delphi" c DelphiKingdom. Пригодится. |