--复制表结构及其数据
create table table_name_new as select * from table_name_old; --只复制表结构
create table table_name_new as select * from table_name_old where 1=2;
--create table table_name_new like table_name_old 实测行不通 --只复制表数据:
--如果两个表结构一样
insert into table_name_new select * from table_name_old;
--如果两个表结构不一样
insert into table_name_new(column1,column2...) select column1,column2... from table_name_old;
注意:
1,设置的唯一性约束,默认值,是否为空等都不会被复制过去
2,如果是为了备份数据,命名最好为 原表名加时间(例:TABLE_NAME_190220)
参考博客:
1,如何在Oracle中复制表结构和表数据 【转载】 - 玲珑少年 - 博客园
http://www.cnblogs.com/haibin168/archive/2011/02/26/1966053.html