2016-12-09 9 views
0

Каков наилучший способ создать отношения один к одному из этих двух таблиц ?Создание отношений один к одному SQL

CREATE TABLE hotel(
id_Hotel 
... 

) 

CREATE TABLE Manager(
ID_Manager 
... 

) 

Большое спасибо!

+0

Предположительно, каждый отель имеет менеджер, поэтому место для начала с идентификатором менеджера в гостиничный стол. –

+0

Почему это должно быть соотношение 1-1? Вы не держите историю менеджеров, как только они уйдут? Изучите внешние ключи и уникальные ограничения для объединений. –

+0

Его назначение школы использовать отношения 1 к 1, но я могу просто оставить его. Со школьного проекта мне не нужно вести историю менеджеров. Поэтому я, вероятно, сделаю это, создав таблицу Hotel (id_Hotel INT, id_Manager INT ...) и создаст Table Manager (Id_Manager, ....) –

ответ

0

Обычный подход был бы:

create table Hotel(id_Hotel INT, id_Manager INT...) 

Но более практичным решением является:

create table Hotel(id_Hotel INT, ...); 
create table Manager(id_Manager INT, ...); 
create table Hotel_Manager(id_HM INT, id_Hotel INT, id_Manager INT, CreateDate Date); 
+1

'id_HM' бесполезен. Просто создайте '(id_Hotel, id_Manager)' первичный ключ в 'Hotel_Manager'. Но это не отношения «один-к-одному», это много-ко многим. –

+0

Мне нравится, когда вы исправляете мои вещи, @a_horse_with_no_name – JohnHC

 Смежные вопросы

  • Нет связанных вопросов^_^