Oracle存储过程及TABLE表用PL/SQL备份还原


1. 备份

  PL/SQL---->TOOL----->Export user objects,然后选中要备份的存储过程,右击Save Object Selection( 这一步可以省略,但是如果你有很多的存储过程,而且需要分成不同的模块时,那么下次你再备份时,可以直接右击选择Load Object Selection,就可以把上次选中的一些存储过程都选中了)。然后选择下面的Output File的路径,点击Export按钮完成备份。

  表的数据备份:PL/SQL----->TOOLS--------->Export Tables,选中要导出的表,勾选Delete records,然后在where clause里填上条件。如果是部份导出,要改导出文件里的delete from table1 ;为delete from table1 where id like 'WECO%';

  2. 还原

  如果存储过程很多的话,可以做一个BAT文件,这样每次就可以运行它,产生一个SQL文件,直接在PLUS SQL里运行这个产生的SQL文件即可。BAT文件可参考下面的格式:

echo generate batch sql script
  
echo @%cd%PackageIVPKGIVHEAD.sql; >>%cd%BatchSQL.sql
echo @%cd%PackageIVPKGIVBODY.sql; >>%cd%BatchSQL.sql
echo @%cd%PackageINPKGINHEAD.sql; >>%cd%BatchSQL.sql
echo @%cd%PackageINPKGINBODY.sql; >>%cd%BatchSQL.sql

  上面左边的路径是你备份时导出SQL的路径,只要这个BAT文件和Package文件夹在同一级目录里就行。每次还原时就可以先运行这个BAT文件,然后它会产生一个BatchSQL.sql文件。然后找开PLUS SQL,输入: @ c:...BatchSQL.sql 就可完成还原。(注意:用PLUS SQL还原时,SQL语句里面不能有&符号,否则会出错,可以用AND 代替它。)


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3