如何复制 Redshift 表架构?

问题描述 投票:0回答:2

我正在尝试复制包含修改器的 Redshift 表。

我尝试使用 CTAS 语句,但由于某种原因无法复制

not null

等修饰符
create table public.my_table as (select * from public.my_old_table limit 1);

似乎也没有办法在创建表后更改表以添加修饰符,这让我相信除了运行原始的创建表语句与CTAS 声明。

amazon-web-services duplicates copy amazon-redshift
2个回答
19
投票

根据docs你可以做

CREATE TABLE my_table(LIKE my_old_table);

0
投票

克隆包含数据的表的最简单方法是:

CREATE TABLE cloned_table AS SELECT * FROM original_table;

但它并没有继承所有的表属性,只是继承了基本的列定义。

要克隆与原始表完全相同的表,您必须执行查询。 一个用于创建表架构,另一个用于复制数据。

-- this will only create a clone of the table structure
CREATE TABLE cloned_table (LIKE original_table);

-- copying data
INSERT INTO cloned_table SELECT * FROM original_table;
© www.soinside.com 2019 - 2024. All rights reserved.