Я пытаюсь создать базовую базу данных Студента в доступе. Основные таблицы, которые я использую являются курсами, Студентами, Сотрудников и модулей.Новичок в доступе db. Отношения для отслеживания записей объектов
Просто чтобы прояснить немного о моей терминологии:
- Мой курс на самом деле университет. (т. е. курс по экономике)
- Мои модули - это настоящие курсы, относящиеся к каждому университету. (i, e, Economics Course включают такие модули, как математика, статистика, эконометрика и т. д.).
- Мои сотрудники - учителя.
- Модуль включает в себя ровно 12 лекций.
- Модуль предлагается в определенном семестре (период 6 месяцев), A = сентябрь-февраль и B = март-август. Один модуль может предлагаться только в одном из двух семестров.
Отношения, которые я хочу использовать это:
- Курс имеет много студентов. (один-ко-многим)
- Курс имеет много модулей. (один-ко-многим)
- Максимальный 1 сотрудник может вести 1 курс. Мне нужно знать дату, когда он получил руководство этим курсом (mgrstartdate). (один-к-одному) персонала может иметь только 1 специализацию (т.е. Джон Смит Математик) персонала может иметь много квалификации (т.е. «10 лет предыдущего опыта» и «опубликовано статьи»)
- Штатные член учит много модулей. (one-to-many)
- Студент может зарегистрироваться (взять на себя) во многих модулях. (many-to-many) В этом случае мне нужно знать дату регистрации и окончательный класс (исполнение).
- Студент может посещать множество модулей. (many-to-many) В этом случае мне нужно получить дату посещения, посещение (да/нет) и время прибытия. (Время прибытия - причина, по которой я отслеживаю посещаемость, а не отсутствие)
- Модуль включает в себя 12 лекций. (one-to-many) Модуль предлагается в определенном семестре (период 6 месяцев), A = сентябрь-февраль и B = март-август. Один модуль может предлагаться только в одном из двух семестров.
Так вот следует мои таблицы и их отношения Предварительный просмотр: Access Relationships preview
Это выглядит как, как описано на указанных выше отношениях? Функционально ли записывать производительность, посещаемость и время прибытия учащихся? Я использовал таблицу лекций, чтобы отслеживать дату/время для каждого модуля. Это необходимо или я могу просто переместить все атрибуты таблицы лекций в таблицу модулей?
Очевидно, что взаимоотношения персонала-модуля много-ко-многим. Тем не менее, я, вероятно, сделаю то, что вы сказали о прикреплении. Участвует в лекции. В лекции я уже поменял дату с указанием даты и времени с указанием всего 1 записи типа даты/времени и формального общего типа. Единственные многозначные поля - это специализации и квалификации, которые я уже отслеживаю в разделенных таблицах. Моя текущая проблема, когда я вводил данные с этой моделью, кажется, проблема целостности. –
Моя текущая проблема, когда я вводил данные с этой моделью, кажется, проблема целостности. -Я зарегистрировал студентов на курсах. (Курс-студент: один-ко-многим) -I зарегистрированные модули в курсах (Module-Course: one-to-many) -Но когда я собираюсь регистрировать модули на ученике, он позволяет мне делать любые комбинации без ограничений от предыдущих отношений. (Студенческий модуль: многие-ко-многим) Любые подсказки, почему это происходит? Это должно быть против моих правил целостности, хотя я использую lookup для std_matericNo и m_code в таблице Undertakes. –
В соответствии с действующими правилами для этой базы данных нет оснований. Если вы хотите применить его, вы должны добавить 'c_title' в Undertakes и оба соединения. Или сделайте это во внешнем интерфейсе, включив только модули с таким же 'c_title', что и текущий ученик. – Andre