--------数据导入导出--------
1.备份数据库
将数据库中正在运行的数据以文件形式导出到外置媒介并保存起来,是目前数据库备份的主要手段
数据备份的具体实现就是数据的导出
(1)打开windows命令提示符窗口,进入Oracle服务器安装的目录下的bin目录
(2)执行:
exp system/oracle@orcl file=D:\oracle\source\orcl.dmp full=y
其中system/oracle表示数据库的用户名和口令,@orcl表示要导出的数据库名,file表示备份文件的保存路径和名称,full=y表示导出整个数据库的结构
EXP是Oracle最为古老的工具之一,
2.导出用户所有数据
exp system/oracle@orcl file=D:\oracle\source\system.dmp owner=(system)
导出system用户的所有对象
Oracle支持一次性导出多个用户下的所有对象,只需要为exp语句后的owner关键字赋值时将用户名加入即可;例如,owner=(system,test)表示导出system和test两个用户的所有对象
3.导出指定表数据
exp system/oracle@orcl file=D:\oracle\source\stugrade.dmp tables=(stu,grade);
4.导出指定表的部分数据
exp system/oracle@orcl file=D:\oracle\source\stusno.dmp tables=(stu) query=\"where sno like '12%'\"
5.恢复数据库
imp system/oracle@orcl file=D:\oracle\source\orcl.dmp full=y ignore=y
在全部导入数据库时,需要首先将整个数据库删除,否则在导入许多数据对象时会显示"违反唯一约束条件"的错误信息
6.导入数据表
imp system/oracle@orcl file=D:\oracle\source\stugrade.dmp tables=(stu)
在导入某个指定数据表时,一定要使用该用户导入,例如,stu表有system用户拥有,那么就必须以system用户进行导入
7.导出excel文件
(1)以system/oracle连接sqlplus,输入查询stu表所有数据的sql语句,单击【文件】|【保存】|【创建】命令,将其保存为D:\oracle\source\getdata.sql
(2)在sqlplus输入语句:
set linesize 200
set term off verify off feedback off pagesize 999
set markup html on entmap on spool on preformat off
spool D:\oracle\source\stu.xls
@D:\oracle\source\getdata.sql
spool off
exit
spool语句是Oracle中一个输出重定向命令
@符号开始的语句表示执行指定位置的sql脚本
如果使用PLSQL,可以直接查询数据后,右键单击数据展示区左上角,在弹出窗口,选择复制到excel或者选择导出结果选择excel
8.导入excel数据
(1)打开目标excel文件,删除其包含列名的一行后,单击工作区左上角,选中全部数据,复制整个工作表中的数据
(2)在PLSQL中,执行编辑表数据,右键单击数据展示区左上角,在弹出窗口选择粘贴