Import 如何在Oracle中复制表而不导入数据和约束?

Import 如何在Oracle中复制表而不导入数据和约束?,import,oracle11g,create-table,Import,Oracle11g,Create Table,我想从另一个名为table1的表中创建一个名为table2的新表,而无需导入数据和约束。我使用了这个查询: create table2 as select * from table1 where 1=2; 此代码创建的table2没有任何数据,但从table1导入约束。有没有办法不从表1导入约束?答案可以在问题中找到 如果select是一个union,Oracle不会添加任何约束,因此只需使用同一个select两次,并确保在第二个select中不包含任何记录: create table2 as

我想从另一个名为
table1
的表中创建一个名为
table2
的新表,而无需导入数据和约束。我使用了这个查询:

create table2 as select * from table1 where 1=2;

此代码创建的
table2
没有任何数据,但从
table1
导入约束。有没有办法不从
表1
导入约束?

答案可以在问题中找到

如果select是一个union,Oracle不会添加任何约束,因此只需使用同一个select两次,并确保在第二个select中不包含任何记录:

create table2 as 
select * from table1 where 1=2
union all
select * from table1 where 1=2;