![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGrid,ADODataSet и таблица с полями по умолчанию [D7, MSSQL]
Fishka © (2005-07-13 12:49:00)На форме - ADODataSet(запрос к таблице MSSQL),DBGrid, DataSource.
Ввожу записи, нажимаю Ctrl-Del - все нормально удаляется.
Изменяю структуру таблицы, к которой запрос, а именно определяю поля по Default(как мне и нужно).В DBGride эти поля не высвечиваются.
Ввожу записи, нажимаю Ctrl-Del - возникает ошибка (типа: не получается найти записи, запись была изменена после последнего чтения). Такие же проблемы и при попытке изменить запись.
Пробую вставлять Post при событиях ADODataSet - не помогает.
Как с этим бороться? Подскажите, пожалуйста.
Fishka (2005-07-13 13:09:00) [21]В данном случае телепатором оказался ЮЮ © (13.07.05 12:51) [1]
Завести ключевое поле
Вроде помогло, но надо еще проверить. СПАСИБО!
Хотя хотелось бы услышать обоснование. Что же 4 ключевых полей недостаточно?
evvcom (2005-07-13 13:04:00) [22]
> Я не изменяю структуры
А как же тогда понять [0]:
> Изменяю структуру таблицы, к которой запрос
А? И из этого совсем не "имелось в виду, что программа не работает при наличии полей по Default". А не работает, потому что ошибка в программе. Скорее всего ... в 17-й строке. Да, да, точно, телепатор говорит, что именно в 17-ой!
Fishka (2005-07-13 12:58:00) [23]ЮЮ © (13.07.05 12:51) [1]
В запросе есть ключевые поля. Правда их 4. А нужно одно типа Identity?
evvcom © (13.07.05 12:52) [2]
Я не изменяю структуры - это было написано для примера (имелось в виду, что программа не работает при наличии полей по Default).
evvcom (2005-07-13 12:52:00) [24]не надо изменять структуру таблицы во время работы программы.
ЮЮ (2005-07-13 12:51:00) [25]Завести ключевое поле, дабы удаляемая запись искалась по нему, а не по полям, которые отличаются в локальном наборе и на сервере