Я новичок в Access и придумала структуру, в которой я не совсем уверена, что она действительна .... Надеюсь получить какое-то руководство и понимание поведения в MS Access.
Чтобы заложитьНа рисунке у меня есть раздел моего макета, который я использую для сопоставления, чтобы определить, относятся ли записи в одной таблице к одной из двух похожих таблиц.
Структура выглядит следующим образом: «У меня есть три основные таблицы»"," Программа "и" Подпрограмма ".Отчеты могут попадать либо в Program, либо в Sub_Program, а в Sub_Programs - в Programs.
. Для создания сопоставления у меня есть две вспомогательные таблицы «ReportMap» и «Type_Mapper». ReportMap имеет 3 поля: «Parent_ID», «Parent_Type» и «REPORT_ID».Type_Mapper имеет два поля «ID» и «Type_Name».
В MS Access я установил отношения следующим образом:
Report "ID" => ReportMap "Report_ID"
ReportMap "Parent_Type" => Type_Mapper "ID"
ReportMap "Parent_ID" => Sub_Program "ID"
ReportMap "Parent_ID" => Program "ID"
Sub_Program "Program_ID" => Program "ID"
В своей голове я думаю, что таблица ReportMap будетвозможность указывать на таблицу Program или Sub_Program с помощью вспомогательной таблицы Type_mapper.У меня возникла проблема с пониманием того, как именно работают эти отношения.
Будет ли установка отношений таким образом взорвать мою базу данных, потому что у меня есть две таблицы, использующие отношения на одном и том же поле в третьейТаблица?или это типичная практика?