powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / не могу добавить ограничение(constraint) на поле
2 сообщений из 2, страница 1 из 1
не могу добавить ограничение(constraint) на поле
    #39502146
Kelt82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеются две таблицы:

ГРУЗОВИКИ
CREATE TABLE trucks (
id integer NOT NULL DEFAULT nextval('trucks_id_seq'::regclass),
number character varying(10) NOT NULL,
description character varying(255),

motorcade_id(ID автоколонны) integer NOT NULL,
trailer_id(ID прицепа) integer,


CONSTRAINT trucks_pkey PRIMARY KEY (id),

CONSTRAINT motorcade_fkey FOREIGN KEY (motorcade_id)
REFERENCES motorcade (id) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION,

CONSTRAINT trailer_fkey FOREIGN KEY (trailer_id)
REFERENCES trailers (id) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION

)


ПРИЦЕПЫ
CREATE TABLE trailers (
id integer NOT NULL DEFAULT nextval('trailers_id_seq'::regclass),
number character varying(10) NOT NULL,
description character varying(255),

motorcade_id(ID автоколонны) integer NOT NULL,

CONSTRAINT trailers_pkey PRIMARY KEY (id),

CONSTRAINT motorcade_fkey FOREIGN KEY (motorcade_id)
REFERENCES public.motorcade (id) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
)

Вообщем есть грузовик, есть прицеп который связывается с грузовиком по полю trucks.trailer_id ... и у грузовика и у прицепа есть связь с автоколонной к которой они принадлежат.... Так вот, необходимо что бы к грузовику с автоколонны 1, можно было привязать прицеп также только из автоколонны 1...То есть для trucks.trailer_id еще должно выполняться условие trucks.motorcade_id = trailers.motorcade_id.

Возможно ли это реализовать с помощью contraints check () ??? Если возможность при данном варианте решения получить доступ в условии к полю другой таблицы() по референсу внешнего ключа (...trailer_fkey FOREIGN KEY (trailer_id).... REFERENCES trailers (id))??? Я не смог!
...
Рейтинг: 0 / 0
не могу добавить ограничение(constraint) на поле
    #39502672
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужен составной внешний ключ в таблице trucks

FOREIGN KEY (trailer_id, motorcade_id) REFERENCES trailers(id, motorcade_id)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / не могу добавить ограничение(constraint) на поле
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]