Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从postgresql字段中删除自动增量_Sql_Postgresql_Auto Increment - Fatal编程技术网

从postgresql字段中删除自动增量

从postgresql字段中删除自动增量,sql,postgresql,auto-increment,Sql,Postgresql,Auto Increment,我在数据库中有一个现有表,FK'd来自其他几个数据库,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字段中删除autoincrement,只需将其移动为int

我在数据库中有一个现有表,FK'd来自其他几个数据库,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字段中删除autoincrement,只需将其移动为int字段(而不会丢失表中的当前数据)。除了删除并重新创建表之外,我该怎么做?

只需删除默认值:

ALTER TABLE forecastsource ALTER COLUMN source_id DROP DEFAULT;

您可能还想删除该序列。

如果该序列是作为序列创建的,但出于某种原因您仍然需要它,则应更改由NONE拥有的序列forecastsource\u source\u id\u seq;