🔥 Burn Fat Fast. Discover How! 💪

​​Нюансы применения многотабличных запросов. Работая с многот | Access

​​Нюансы применения многотабличных запросов.

Работая с многотабличными запросами, необходимо учитывать некоторые нюансы их применения, которые касаются обновления данных, а также состава строк в результатах запроса.
Важно учитывать, что некоторые поля в результатах многотабличного запроса обновить невозможно. Это касается полей на стороне "один" связи "один ко многим", на основании которых формируется соединение (если только не был установлен флажок Каскадное обновление связанных полей (Cascade Update Related Fields)). Кроме того, исключена возможность обновлять поле на стороне "многие" связи, по которому выполняется соединение, после обновления данных на стороне "один". Еще более важно то, что некоторые поля могут быть обновлены, но это приводит к весьма неожиданным последствиям. В частности, необходимо учитывать, что может вызвать обновление полей на стороне "один" связи "один ко многим". Безусловно, при этом фактически пользователь обновляет одну строку в исходной таблице на стороне "один" связи, но это может затронуть несколько строк на стороне "многие" той же связи.

Например, показан результат на основе таблиц tblClients, tblOrders, tblOrderDetails и tblItems. В данном случае в определенной строке в выводе запроса значение Павел поля FirstName заменено на Андрей. На первый взгляд может показаться, что это изменение повлияет только на конкретный элемент, тем не менее после перехода к другой записи, изменились все строки, в которых встречался Иванов Павел на Иванова Андрея. Это изменение произошло в связи с тем, что данные о клиенте извлекаются из одной строки таблицы tblClients.

#Запросы #МноготабличныеЗапросы