数据导入导出的两种方式
第一种是导出为.dmp的文件格式,.dmp文件是二进制的,可以跨平台,还能包含权限,效率很不错,用得最为广泛
第二种是导出为.sql文件,可用文本编辑器查看,通用性比较好,但效率不如第一种,适合小数据量导入导出
数据的导出
1:将数据库orcl完全导出
exp system/oracle@orcl file=c:\oracle_bak\orcl_bak.dmp full=y
2:将数据库中scott用户的所有对象导出
exp scott/tiger1@orcl file=c:\oracle_bak\scott_bak.dmp owner=scott
3:将scott用户中表emp dept导出
exp scott/tiger1@orcl file=c:\oracle_bak\table_bak.dmp table=(emp,dept)
数据的导入
将备份文件导入到数据库
imp scott/tiger1@orcl file=c:\oracle_bak\scott_bak.dmp ignore=y
将scott用户的备份文件导入到yanln用户中
imp yanln/yanln@orcl fromuser=scott touser=yanln file=c:\oracle_bak\scott_bak.dmp
利用触发器实现数据的同步备份
需求:
1:创建emp表的备份表emp_bak
2:当删除emp表的员工信息时,备份表同步删除
创建员工表的备份表
create table emp_bak
as
select * from emp;
创建触发器来实现数据的同步备份,当删除员工后,备份表同步删除
create or replace trigger syno_bak_trigger
after delete
on emp
for each row
begin
delete from emp_bak where empno=:old.empno;
end