plsql导出导入 表结构、表数据、存储过程等

 

导出:
首先点击   TOOLS,选择  EXPORT TABLEShtml

 

 选中你须要导出的表,mysql

 

 

 

勾选  “Create tables” 是由于在导入的数据库中没有此表sql

若是勾选"Drop tables" 而没有勾选 “Create tables” ,而数据库中没有此表,会报表和视图不存在数据库

Output file 为导出的路径oracle

 

 

 

 

若是你想导的表  数据记录不少,就只想导出表结构,你能够在  where clause 后面接一个  否认条件,就能够只导出表结构而不导出数据了。 以下是  1=2  ,亲测有效ide

 

 

 

 

导入:
首先点击   TOOLS,选择  IMPORT TABLESpost

 

 

 

 选择刚才导出的文件导出便可测试

 

 


导出用户对象:  包括表、存储过程、视图等,要更改表空间名称url

修改表空间name: spa

一、 使用oracle用户登陆执行

        $sqlplus / as sysdba

二、 执行修改表空间命令以下

       alter tablespace  TEST rename to TEST1;

    注:可连续对多个表空间进行重命名

三、 确认表空间名已经修改

     select name from v$tablespace;


前提:在CMD 命令下

导出命令:exp 用户名/密码@数据库 owner=用户名 file=文件存储路径(如:F:\abcd.dmp)

测试截图:exp ZM/sql123@ORCL owner=ZM file=F:\abcd.dmp

 

导入命令:imp 用户名/密码@数据库 fromuser=用户名 touser=用户名 file=d:\cu.dmp ignore=y

 imp:命令类型  

cu/mycu@db:导入的数据库登录(用户名/密码@数据库)  

fromuser:文件的指定用户

 touser:指定导入到当前登陆的数据库某个用户  

file:须要导入的数据文件  

ignore:是否忽略建立错误

 

测试截图:imp ZM/sql123@ORCL fromuser=ZM touser=SZZM file=F:\test.dmp ignore=y

 

若是报错:msg.dmp 是由具备dba角色的用户到导出的。要有相同或更高权限的用户才能导入该文件。

解决方案 :用system   oracle123登陆,给用户受权   grant dba to XXX


删除用户表空间全部数据

最省心的方法是级联删除
 
drop user XXXX cascade; 最后这个级联特别有用(删除用户以及全部关联的数据库对象)
 
麻烦一点的办法,把删除语句作成存储过程

注释:

一、删除用户 而后重建,这样最快:

一、在cmd中输入
sqlplus / as sysdba
二、删除用户A,级全部和用户A关联的数据
drop user a cascade;
三、重建用户A
create user A identified by 密码;
grant connect,resource to A;
四、登入A用户,就ok了
conn A/密码
这个方法挺快的,还方便啊。

drop user xxx cascade这样有些数据库对象好像也删除不了

有时候某些用户被授予很复杂的权限和角色,(若删除用户再建立用户的方法会很繁琐),因此仍是衡量哪一种方法更快,根据实际状况选择

————————————————原文连接:https://blog.csdn.net/qq_25221835/article/details/82586961

相关文章
相关标签/搜索