Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Не могу изменить запись в главной таблице


Страницы:   1 2

delphino ©   (2007-05-15 03:39:00) 

Не работает каскадное обновление, дело в том, что у меня имеются две связанные таблицы(один ко многим), по идее если я изменяю запись в главной таблице, то в подчиненной она тоже должна изменяться но при попытке сохранить изменение программа выдает исключение:"Access violation at adress F9A86BED", почему?


delphino   (2007-05-16 05:08:00) [21]

то есть если фамилия является ключевым полем, то изменять я его не могу, так?


ЮЮ   (2007-05-16 04:29:00) [22]

А почему бы не дополнить первую таблицу полем
M_Code - Autoincrement (ключ)

>У меня локальная база данных
Какая?


delphino   (2007-05-16 03:35:00) [23]

У меня локальная база данных, а не клиент-серверная.
Структура таблицы managers:
M_Familiya - string (ключевое поле)
M_Password - string

Cтруктура таблицы clients:
C_Code - Autoincrement (ключ)
С_Name - string
 ...
C_Manager - string (по этому полю связаны таблицы)


ЮЮ   (2007-05-16 03:25:00) [24]

>так я и меняю фамилию менеджера в таблице менеджеров!

А причем здесь каскадное обновление?
может все же структуру таблиц приведешь? А то "есть поле C_Manager" - не информация, даже тип неизвестен.

>потому что никакого кода я не писала.
У датасета нет никаких обработчиков? Тогда отчего возникает желание "по идее если я изменяю запись в главной таблице, то в подчиненной она тоже должна изменяться"? Измененияю если и произойдут, то на сервере, а в других клиентских наборах всё останентся по прежнему.


delphino   (2007-05-16 02:36:00) [25]

может я что-то неправильно сделала когда связи между таблицами устанавливала?


delphino   (2007-05-16 02:29:00) [26]

так я и меняю фамилию менеджера в таблице менеджеров! а в коде ошибки быть не должно, потому что никакого кода я не писала.


Anatoly Podgoretsky   (2007-05-15 23:16:00) [27]

> delphino  (15.05.2007 05:40:02)  [2]

Вот теперь понятно - у тебя ошибка в программе.


ЮЮ   (2007-05-15 08:46:00) [28]

> Допустим у меня поменялся менеджер и я хочу изменить его
> фамилию

Если изменилась фамилия менеждера, то менять её надо в таблице менеджеров. Причем здесь таблица, в которой C_Manager - ссылка на таблицу менеджеров? Или в той таблице ФИО - ключевое поле?


Loginov Dmitry   (2007-05-15 07:49:00) [29]

> когда я пытаюсь сохранить измененную фамилию программа выдает
> ошибку.


В коде обработки изменения фамилии менеджера у тебя, видимо, присутствует ошибка.


delphino   (2007-05-15 05:40:00) [30]

Есть таблица клиентов, в которой есть поле C_Manager, также есть таблица в которой содержатся фамилии менеджеров. Каждому менеджеру принадлежит несколько клиентов. Допустим у меня поменялся менеджер и я хочу изменить его фамилию, когда я пытаюсь сохранить измененную фамилию программа выдает ошибку.


ЮЮ   (2007-05-15 05:17:00) [31]

> по идее если я изменяю запись в главной таблице, то в подчиненной
> она тоже должна изменяться


Идея совсем не понятна. Кто Она? Как запись из главной таблицы может оказаться в подчиненной таблице? Не лучше привести структуру, связи, и показать, что пытаешься изменить.


> :"Access violation at adress F9A86BED

Из-за ошибок в коде. Твоём или используемых компонентов. К БД отношения не имеет. Ловится отладчиком владельцем исходников.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо