| 
 | 
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Пытаюсь придумать логически правильную БД для следующей ситуации: Есть таблицы "Университет", "Аудитория" и "Преподаватель". Аудитории имеют внешние ключи от "Университета". Если мы попытаемся составить таблицу "Расписание преподавателей" с внешними ключами от "аудиторий" и "преподавателей", то мы теряем явную зависимость от "Университета", и можем обьединить аудитории и преподавателей разных университетов. Что необходимо исправить? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 00:27 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  fallen_falconПытаюсь придумать логически правильную БД для следующей ситуации: Есть таблицы "Университет", "Аудитория" и "Преподаватель". Аудитории имеют внешние ключи от "Университета". Если мы попытаемся составить таблицу "Расписание преподавателей" с внешними ключами от "аудиторий" и "преподавателей", то мы теряем явную зависимость от "Университета", и можем обьединить аудитории и преподавателей разных университетов. Что необходимо исправить? А никак. У вас связи нет. Вообще-то "преподаватель" работает на "кафедре" "деканата", который входит в состав "университета". За "кафедрой" и "деканатом" закреплен "аудиторный фонд". Но есть еще "общие/потоковые" аудитории, они относятся либо к "деканату", либо к "университету". Это если очень приближенно говорить. На самом деле там еще сложнее. Т.к. могут быть замены преподавателей. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 09:02 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Можно включить универ в первичный ключ и аудитории и преподавателя, тогда в расписании одно поле университет будет задействовано в двух внешних ключах (на аудиторию и преподавателя). ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 09:03 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  fallen_falconПытаюсь придумать логически правильную БД для следующей ситуации: Есть таблицы "Университет", "Аудитория" и "Преподаватель". Аудитории имеют внешние ключи от "Университета". Если мы попытаемся составить таблицу "Расписание преподавателей" с внешними ключами от "аудиторий" и "преподавателей", то мы теряем явную зависимость от "Университета", и можем обьединить аудитории и преподавателей разных университетов. Что необходимо исправить? А что тут исправлять? Преподаватель вполне имеет право работать в разных университетах, и одну лекцию прочитать в аудитории А-210 политеха, а другую - в аудитории М-315 медицинского. У нас в политехе, например, правоведение читал преподаватель из института МВД, специально приезжал к нам на лекцию каждый раз. Так что сама структура БД у вас верная, а свои бизнес-ограничения реализуйте как-то иначе. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 12:31 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  А если вы все же вообразите, что преподаватели привязаны к университету неразрывно и единственно (ну там цепями прикованы или как), можно добавить ссылку "Университет" в таблицу "Преподаватели".  Но это будет ошибкой, потому что тогда случайно залетевший дятел вышеупомянутый преподаватель правоведения разрушит информационную систему. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 12:38 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Cane Cat Fisher Но это будет ошибкой, потому что тогда случайно залетевший дятел вышеупомянутый преподаватель правоведения разрушит информационную систему. "Преподаватель" - это все-таки скорее функция, чем индивидуум. Поэтому никакого разрушения информационной системы не будет - будет несколько записей "преподаватель" в разных университетах для одного человека (возможно, ссылающихся на одну и ту же запись "индивидуум"). ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 12:59 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Cane Cat FisherА что тут исправлять? Преподаватель вполне имеет право работать в разных университетах, и одну лекцию прочитать в аудитории А-210 политеха, а другую - в аудитории М-315 медицинского. У нас в политехе, например, правоведение читал преподаватель из института МВД, специально приезжал к нам на лекцию каждый раз. Так что сама структура БД у вас верная, а свои бизнес-ограничения реализуйте как-то иначе. Значит, прийдется проверять целостность запросами. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 13:25 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  fallen_falcon, не хватает времени. Мир не статичная замершая в сейчас картинка. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 13:55 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  А что такое name в lecture_teacher и lecture_student? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 14:54 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Кот МатроскинА что такое name в lecture_teacher и lecture_student? Это абстрактная задача. Что должны представлять эти поля- придумаю задним числом хД О времени в таблице надо будет подумать) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2017, 15:14 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Кот Матроскин"Преподаватель" -  это все-таки скорее функция, чем индивидуум. Поэтому никакого разрушения информационной системы не будет - будет несколько записей "преподаватель" в разных университетах для одного человека (возможно, ссылающихся на одну и ту же запись "индивидуум"). Предлагаю определение: В.И.Ленин"Преподаватель" есть функция индивидуума, данная нам в ощущениях лекции Разумеется, если задумывать некую над-университетскую систему, то в ней будет отдельно сущность "физ.лицо", и к ней один-ко-многим - сущность "Сотрудник", привязанная к организации (университету). И тогда для составления Большого Всеобщего Расписания нужно будет учесть, что если несколько Сотрудников представлены одним Физ.лицом, то расписание для них должно быть последовательное - чтобы в политехе и МВД не оказались лекции по праву в одно и то же время. Только вот никак не могу представить, что же это будет за организация, составляющая Всеобщее Расписание Всего. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 08.02.2017, 11:34 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  fallen_falcon О времени в таблице надо будет подумать) А чего думать-смело в ключ добавляйте ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 08.02.2017, 22:53 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Cane Cat Fisher Разумеется, если задумывать некую над-университетскую систему, то в ней будет отдельно сущность "физ.лицо", и к ней один-ко-многим - сущность "Сотрудник", привязанная к организации (университету). И тогда для составления Большого Всеобщего Расписания нужно будет учесть, что если несколько Сотрудников представлены одним Физ.лицом, то расписание для них должно быть последовательное - чтобы в политехе и МВД не оказались лекции по праву в одно и то же время. Только вот никак не могу представить, что же это будет за организация, составляющая Всеобщее Расписание Всего. Собственно, если рассматриваем расписание одного-единственного университета, то там тем более не возникнет никаких проблем с оным преподавателем правоведения - он будет нормально заведен в базе как преподаватель данного университета, а что он там где-то еще преподает и что у него записано в трудовой книжке как первичное место работы - нам-то что за печаль? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 08.02.2017, 23:07 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Кот МатроскинСобственно, если рассматриваем расписание одного-единственного университета Как раз нет. Проблема-то у человека, что университетов у него много. fallen_falcon...и можем обьединить аудитории и преподавателей разных университетов. Что необходимо исправить? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.02.2017, 10:25 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Cane Cat FisherКот МатроскинСобственно, если рассматриваем расписание одного-единственного университета Как раз нет. Проблема-то у человека, что университетов у него много. Так если Вы согласны, что университетов много и система - "над-университетская", то к чему было 20192031 ? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.02.2017, 11:28 | 
  
  
  
   | 
||
| 
 
Проблема с взаимосвязями 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Кот МатроскинCane Cat Fisherпропущено... Как раз нет. Проблема-то у человека, что университетов у него много. Так если Вы согласны, что университетов много и система - "над-университетская", то к чему было 20192031 ? С одной стороны, забавно обсуждать структуру БД сферической "над-университетской" системы в вакууме, раз уж заданы конкретные вопросы. Просто как упражнение в логике. С другой - таких систем не встречал, и представить не могу. Так что это из области головоломок "Если все улитки - паровозы, то..." ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.02.2017, 12:32 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=32&fpage=12&tid=1540209]:  | 
    0ms | 
get settings:  | 
    11ms | 
get forum list:  | 
    12ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    45ms | 
get topic data:  | 
    13ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    54ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 233ms | 
| total: | 381ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...