plsql导出导入 表结构、表数据、存储过程等
导出 - 方式一:
首先点击 TOOLS,选择 EXPORT TABLES
选中你需要导出的表,
勾选 “Create tables” 是因为在导入的数据库中没有此表
如果勾选"Drop tables" 而没有勾选 “Create tables” ,而数据库中没有此表,会报表和视图不存在
Output file 为导出的路径
如果你想导的表 数据记录很多,就只想导出表结构,你可以在 where clause 后面接一个 否定条件,就可以只导出表结构而不导出数据了。 如下是 1=2 ,亲测有效
导入 - 方式一:(本地装了oracle才可以)
首先点击 TOOLS,选择 IMPORT TABLES
选择刚才导出的文件导出即可
导出用户对象: 包括表、存储过程、视图等,要更改表空间名称
修改表空间name:
1、 使用oracle用户登录执行
$sqlplus / as sysdba
2、 执行修改表空间命令如下
alter tablespace TEST rename to TEST1;
注:可连续对多个表空间进行重命名
3、 确认表空间名已经修改
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
如果报错:
1. 被导入的表空间名,必须和dmp文件里导出的表空间名一致
2. IMP-00038:无法转换为环境字符集句柄
原因: 数据泵 不一致导致的,比如说你用expbd导出来的 用imp导入的时候就会出现这个错误
解决:数据泵 要一致:exp导出来的 用imp导入;
expbd导出来的 用impbd导入。
3. msg.dmp 是由具有dba角色的用户到导出的。要有相同或更高权限的用户才能导入该文件。
解决方案 :用system oracle123登录,给用户授权 grant dba to XXX
原文链接:https://blog.csdn.net/qq_25221835/article/details/82586961
导出表数据 - 方式二:阙教
本地装了Oracle的话,导入表数据 阙教:(本地装了oracle才行)
——————————————————————————————————————————————————————————————————————————————————————————————————
(导入 - 方式二:灵数)
plsql 导入报错: IMP-00038:无法转换为环境字符集句柄
原因: 数据泵 不一致导致的,比如说你用expbd导出来的 用imp导入的时候就会出现这个错误
解决:数据泵 要一致:exp导出来的 用imp导入;
expbd导出来的 用impbd导入。
impbd导入dmp文件:
一,在Oracle的安装文件的BIN目录下,shift +右键 开启powershell命令窗口。
二,以dba身份登录oracle数据库:
Sqlplus user/123@orcl as sysdba
三:创建DIRECTORY:
create directory DbData as 'F:/DevelopServerData/DbData';
四:给用户授权
Grant read,write on directory DbData to user;
五:执行成功后,退出sqlplus:
输入命令exit,回车。操作目录回到F盘。
六:在F:\DevelopServerData\下手动创建DbData文件夹,并将dmp文件放在文件夹中。
七:导入数据
impdp user/123@orcl remap_schema=test:user directory=DbData dumpfile=20171211.dmp table_exists_action=replace
或: Impdp 账号/密码@localhost:1521/orcl DIRECTORY=DUMP_DIR DUMPFILE=文件名.dmp SCHEMAS=账号
原文链接:https://blog.csdn.net/happyboywlg/article/details/79518918
————————————————————————————————————————————————————————————————————————
删除用户表空间所有数据
最省心的方法是级联删除 drop user XXXX cascade; 最后这个级联特别有用(删除用户以及所有关联的数据库对象) 麻烦一点的办法,把删除语句做成存储过程
注释:
1、删除用户 然后重建,这样最快:
1、在cmd中输入
sqlplus / as sysdba
2、删除用户A,级所有和用户A关联的数据
drop user a cascade;
3、重建用户A
create user A identified by 密码;
grant connect,resource to A;
4、登入A用户,就ok了
conn A/密码
这个方法挺快的,还方便啊。
drop user xxx cascade这样有些数据库对象好像也删除不了
有时候某些用户被授予很复杂的权限和角色,(若删除用户再创建用户的方法会很繁琐),所以还是衡量哪种方法更快,根据实际情况选择
————————————————
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南