oracle 快速复制表结构、表数据

1.情景展示

  根据现有的表,建一个新的表,要求:新表的结构与原有表的表结构一模一样,如何快速实现?

  根据现有的表,建一个新的表,要求:新表的结构、数据与原表一模一样,如何实现快速复制旧表?

2.解决方案

  只复制表结构

  语法:

create table newTable   as select *   from oldTable   where 1=2

  查看执行结果

2018/12/07

  思考:为什么能够实现只复制表结构和没有复制表数据?

  那是因为查询条件:1=2,只能查出的数据为空。

  复制表结构和表数据

  语法:

create table newTable   as select *   from oldTable

  查看执行结果

3.说明 

  主键:

  索引:

  字段注释信息:

  第一种方式只是第二种方式的变形而已,上面的2种方式只是单纯的完成对表结构和表数据的复制;

  其余所有的信息都不会进行复制,比如:主键、唯一键、外键、索引、触发器、表注释、列注释;

字段的默认值,也不会进行复制。

2022年7月15日17:46:57

如何查看表结构(用SQL实现)?

SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME = '大写表名'

 如果表名小写的话,出来的是空数据:

因为Oracle对大小写敏感,当我们用'小写'扩住,表明:强制Oracle将其识别成小写字母;

这样一来,oracle当中自然没有ylt_org_info这张表。

 

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

 相关推荐:

posted @ 2018-11-23 17:20  Marydon  阅读(38918)  评论(0编辑  收藏  举报