我想更新表的一些参数,例如dist和sort键.为了做到这一点,我重新命名了旧版本的表,并使用新参数重新创建了表(一旦创建了表,就无法更改这些参数).
我需要保留旧表的id字段,这是一个IDENTITY字段.但是,如果我尝试以下查询,则会收到错误消息:
insert into edw.my_table_new select * from edw.my_table_old;
ERROR: cannot set an identity column to a value [SQL State=0A000]
Run Code Online (Sandbox Code Playgroud)
如何从旧表中保留相同的ID?
您可以显式指定列,并忽略标识列:
insert into existing_table (col1, col2) select col1, col2 from another_table;
归档时间: |
|
查看次数: |
12453 次 |
最近记录: |