Postgres: n: m промежуточный стол с типом - PullRequest
0 голосов
/ 23 августа 2011

У меня есть таблица с именем «Tag», которая состоит из столбца Id, Name и Description.

Теперь допустим, что у меня есть таблицы Character (C), Movie (M), Series (S) и т. Д...
И я хочу иметь возможность пометить записи в C, M, S несколькими тегами, и один тег можно использовать для нескольких записей.
Так что я мог бы реализовать это так:

T -> TC <- C  
T -> TM <- M  
T -> TS <- S  

Где TC, TM, TS - промежуточные таблицы.
Мне было интересно, смогу ли я объединить TC, TM, TS в одну таблицу с добавленным столбцом типа и по-прежнему использовать внешние ключи.
На данный момент яне нашел способ сделать это.
Или это то, что я не должен делать?

1 Ответ

0 голосов
/ 23 августа 2011

Как видно из приведенных выше комментариев, вы не можете объединить несколько таблиц в одну. Если вы хотите иметь единое представление о «отношениях тегов», вы можете перетащить необходимую информацию в Просмотр . Таким образом, вам нужно написать более длинный запрос только один раз, и вы сможете использовать его как одну таблицу. Помните, что вы не можете вставить данные в представление (есть возможность сделать это, но они немного продвинуты)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...