从 postgresql 字段中删除自动增量
Remove autoincrement from postgresql field
我在数据库中有一个现有的 table,来自其他几个人的 FK,SQL 下面:
CREATE TABLE forecastsource (
source_id integer DEFAULT nextval(('public.forecastsource_source_id_seq'::text)::regclass) NOT NULL,
source_name character varying NOT NULL
);
我想从 id 字段中删除自动增量,并将其移动为一个 int 字段(而不丢失 table 中的当前数据)。除了删除并重新创建 table?
,我该怎么做
只需删除默认值:
ALTER TABLE forecastsource ALTER COLUMN source_id DROP DEFAULT;
您可能还想删除序列。
我在数据库中有一个现有的 table,来自其他几个人的 FK,SQL 下面:
CREATE TABLE forecastsource (
source_id integer DEFAULT nextval(('public.forecastsource_source_id_seq'::text)::regclass) NOT NULL,
source_name character varying NOT NULL
);
我想从 id 字段中删除自动增量,并将其移动为一个 int 字段(而不丢失 table 中的当前数据)。除了删除并重新创建 table?
,我该怎么做只需删除默认值:
ALTER TABLE forecastsource ALTER COLUMN source_id DROP DEFAULT;
您可能还想删除序列。