我知道可以在外键中允许NULL
,但我很难找到答案。我正在使用postgresql,命令“ALTER TABLE table_name ALTER COLUMN column_name INT NULL
”不起作用。我使用这个,以便我的外键允许NULL
。如何在postgresql中正确执行?
这是我的表定义:
CREATE TABLE table1."authorization"
(
authorization_id integer NOT NULL DEFAULT nextval('table1.authorization_seq'::regclass),
process_id integer,
site_id integer,
parent_opted_out boolean,
CONSTRAINT table1_pk PRIMARY KEY (authorization_id ),
CONSTRAINT table2_fk FOREIGN KEY (process_id)
REFERENCES table2.process (process_id) MATCH Unknown
ON UPDATE NO ACTION ON DELETE NO ACTION
)
答案 0 :(得分:1)
你的语法错了。要从列中删除not null
修饰符,您应该使用:
ALTER TABLE table_name ALTER COLUMN column_name DROP NOT NULL