Я создаю таблицу «line», в которой есть столбцы «startpoint» и «endpoint», эти столбцы должны быть заполнены по имени этих точек, то есть в таблице «points» в столбце «name of point». Я пытаюсь установить внешний ключ из таблицы точек в строку: один для столбца начальной точки, а другой - для столбца конечной точки, но оба ссылаются на один и тот же столбец в таблице точек, который называется «имя точки». Но это не сработало. Как мне это сделать? Обратите внимание, что я использую Postgresql версии 11.6 этот код:
'create table public.line(
lineid integer NOT NULL DEFAULT nextval('line_lineid_seq'::regclass),
linetype character varying(20) COLLATE pg_catalog."default",
networkname character varying(50) COLLATE pg_catalog."default",
startpointname character varying(20) COLLATE pg_catalog."default" NOT NULL,
endpointname character varying(20) COLLATE pg_catalog."default",
CONSTRAINT endpoint FOREIGN KEY (endpointname)
REFERENCES public.points (pointsname) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID,
CONSTRAINT startpoint FOREIGN KEY (startpointname)
REFERENCES public.points (pointsname) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID,
CONSTRAINT length CHECK (length_m > 0::double precision),
CONSTRAINT diameter CHECK (diameter_m > 0::double precision)
);'
Заранее спасибо