![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Есть три таблицы, каждая с автоинкрементируемым полем.
Они же являются и ключевыми. Дом(Object) -> Квартиры(Flats) -> Приборы(Devs) Код:
SELECT Objects.`ID`, Flats.`ID` AS FlatID, Flats.`Title`, Flats.`Entrance`, Flats.`Floor`, Devs.`ID` AS DevID, Devs.`FlatID` AS DevFlatID, Devs.`Nr`, Devs.`Type`, Devs.`ErrID`, Devs.`Archive` FROM Objects LEFT JOIN Flats ON Flats.`ObjectID` = Objects.`ID` LEFT JOIN Devs ON Devs.`FlatID` = Flats.`ID` WHERE Objects.`ID` = :ObjectID Этот запрос храню в ObjectImg: TADODataSet При попытке обновить Devs.Archive вот таким вот методом: Код:
ObjectImg.Edit; ObjectImg['Archive'] := -1; ObjectImg.Post; Выдаётся сообщение: Цитата:
Все таблицы связаны Каскадно и на обновление и на удаление (позволительно в моём случае) В поисковиках удалось лишь найти информацию о том, что результат сJOINенных таблиц является статичным и его нельзя редактировать. Совершенно не ясно зачем тогда в БД у связей есть свойства OnUpdate и OnDelete. Что я делаю не так? Последний раз редактировалось Uniq!, 01.03.2016 в 17:36. |