Все сервисы Хабра
Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Закрыть
Задать вопрос
fachel32
@fachel32
SQL
PostgreSQL
Как сделать ссылку на составной ключ в postgresql?
Есть 2 таблицы :
CREATE TABLE APARTMENT( --НОМЕР
number_of_apartment INTEGER ,
housing_name CHARACTER VARYING(30) ,
PRIMARY KEY(housing_name, number_of_apartment)
);
CREATE TABLE ACCOMMODATION( --ПРОЖИВАНИЕ
number_of_apartment INTEGER ,
housing_name CHARACTER VARYING(30),
);
как сделать ,чтобы в ACCOMMODATION были внешние ключи housing_name, number_of_apartment ,ссылаемые на поля составного ключа в APARTMENT ?
Вопрос задан
более трёх лет назад
2735 просмотров
Комментировать
Подписаться
2
Простой
Комментировать
Facebook
Вконтакте
Twitter
Помогут разобраться в теме
Все курсы
Яндекс Практикум
Инженер по тестированию
5 месяцев
Далее
Яндекс Практикум
Java-разработчик
10 месяцев
Далее
Яндекс Практикум
Python-разработчик расширенный
14 месяцев
Далее
Решения вопроса
0
Пригласить эксперта
Ответы на вопрос
1
Athanor
@Athanor
Лайк + Решение: не жмись, нажми
Это сделать довольно легко:
CREATE TABLE ACCOMMODATION( --ПРОЖИВАНИЕ
number_of_apartment INTEGER ,
housing_name CHARACTER VARYING(30),
FOREIGN KEY (number_of_apartment, housing_name) REFERENCES APARTMENT (number_of_apartment, housing_name)
);
Однако, замечу, что лучшей практикой было бы сделать простой первичный ключ в APARTMENT и сослаться на него, а уникальность можно контролировать на уровне таблицы APARTMENT через unique-индекс.
Ответ написан
более трёх лет назад
Комментировать
Нравится
Комментировать
Facebook
Вконтакте
Twitter
Ваш ответ на вопрос
Войдите, чтобы написать ответ
Войти через центр авторизации
Похожие вопросы
SQL
Простой
Правильно ли написан SQL-запрос для вывода клиентов с действующими (непогашенными) кредитами?
1 подписчик
19 окт.
156 просмотров
1
ответ
SQL
+1 ещё
Простой
Как сделать уменьшение склада в СУБД безопасными правильным?
1 подписчик
14 окт.
188 просмотров
4
ответа
PostgreSQL
Простой
Как отредактировать строку в таблице, не имеющей primary key?
1 подписчик
10 окт.
244 просмотра
4
ответа
Python
+2 ещё
Простой
Как получить данные в виде текста на русском языке из базы данных Paradox 4.5?
1 подписчик
23 сент.
306 просмотров
1
ответ
PostgreSQL
+1 ещё
Средний
Как установить Postgres в Ubuntu от 1с (c ИТС)?
1 подписчик
22 сент.
199 просмотров
2
ответа
SQL
+3 ещё
Средний
IIS/Lansweeper сильно тормозит из-за аномального числа логонов, внутренний DDoS?
1 подписчик
15 сент.
92 просмотра
0
ответов
PostgreSQL
Простой
Есть ли способ логировать работу процедуры?
1 подписчик
12 сент.
132 просмотра
2
ответа
PostgreSQL
Простой
Как обновить версию postgres в кластере patroni?
1 подписчик
11 сент.
122 просмотра
1
ответ
SQL
+1 ещё
Простой
Как объединить 2 таблицы обращаясь к одному и тому же полю 2 раза?
1 подписчик
08 сент.
189 просмотров
1
ответ
SQL
+1 ещё
Простой
Какие таблицы для продуктов (и их вариантов) в БД использовать?
1 подписчик
02 сент.
203 просмотра
1
ответ
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
Full-Stack Разработчик (PHP 8 / Node JS / Vue JS / PostgreSQL)
Складно
от 150 000 ₽
DevOps / Python-разработчик
ЛСЦТ
•
Москва
от 280 000 ₽
QA Automation Engineer
ЛСЦТ
•
Москва
от 280 000 ₽
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама