Oracle表导入导出和从一张表创建到另外一张表

来源:互联网 发布:linux 毫秒级的 sleep 编辑:程序博客网 时间:2024/06/05 11:47

今天又被分配任务了 又被上面一级的jj了,各种吐槽我  ,算了

主要就是客户那边一些数据出问题了,但是数据已经备份了,备份是按照不同日期备份的,要从exp里面恢复三张表,但是不同的文件里面包含相同的表。


第一步创建一个用户,并且授予权限

CREATE USER DEMO IDENTIFIED BY DEMO_PASSWORD DEFAULT TABLESPACE USERS QUOTA 10M ON USERS TEMPORARY TABLESPACE temp;


授权
常见的角色授权如下:
GRANT RESOURCE TO DEMO;
GRANT CONNECT TO DEMO;

如果需要级别更高的角色可以用下面的方式:
GRANT DBA TO DEMO;


第二步 :通过exp imp导入导出


最后一步:

复制表结构及其数据:createtable table_name_newasselect *from table_name_old

只复制表结构:createtable table_name_newasselect *from table_name_oldwhere1=2;

只复制表数据: 如果两个表结构一样:insertinto table_name_newselect *from table_name_old

如果两个表结构不一样:insertinto table_name_new(column1,column2...)select column1,column2...from table_name_old