在外键中添加NULL

时间:2014-05-21 04:17:46

标签: sql postgresql

我知道可以在外键中允许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
)

1 个答案:

答案 0 :(得分:1)

你的语法错了。要从列中删除not null修饰符,您应该使用:

ALTER TABLE table_name ALTER COLUMN column_name DROP NOT NULL