zoukankan      html  css  js  c++  java
  • 通过.bat 操作oracal数据库导出文件导入文件并且导出前删除表数据

     1 @echo off 
     2 Set OrclSid=数据库名称
     3 Set ExpUser=账号 
     4 Set ExpPass=密码
     5 Set FileDir=D:SQLBF 
     6 Set SysDate=%date:~0,4%-%date:~5,2%-%date:~8,2%.%time:~0,2%%time:~3,2%
     7 
     8 @echo * * * * * * * * * * * * * * * * * * * * 
     9 @echo * * * * * * * * * * * * * * * * * * * * 
    10 @echo * * * * * ORACLE 数据库导出 * * * * * * 
    11 @echo * * * * * * * * * * * * * * * * * * * * 
    12 @echo * * * * * * * * * * * * * * * * * * * *
    13 
    14 @echo 服务名 = %OrclSid% 
    15 @echo 用户名 = %ExpUser% 
    16 @echo 密 码 = %ExpPass% 
    17 @echo 目 录 = %FileDir% 
    18 @echo 时 间 = %SysDate%
    19 
    20 exp 账号/密码@数据库名称 file=d:sqlbf/ss.dmp tables=(表1,表2)
    21 @echo 数据库导出完成 
    22 pause

    以上为导出文件的脚本

         其他 数据导出例子:
     1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochu.dmp中
       exp rmdb/rmdb123@hz_rmdb file=d:daochu.dmp full=y
     2 将数据库中system用户与sys用户的表导出
       exp rmdb/rmdb123@hz_rmdb file=d:daochu.dmp owner=(system,sys)
     3 将数据库中的表table1 、table2导出
       exp rmdb/rmdb123@hz_rmdb file=d:daochu.dmp tables=(table1,table2) 
     4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
       exp rmdb/rmdb123@hz_rmdb file=d:daochu.dmp tables=(table1) query=" where filed1 like '00%'"
      
         上面是常用的导出,用winzip把dmp文件可以很好的压缩。
      不过在上面命令后面 加上 compress=y  就可以了 

    @echo off 
    Set OrclSid=数据库名称
    Set ExpUser= 账号
    Set ExpPass= 密码
    Set FileDir=D:SQLBF 
    Set SysDate=%date:~0,4%-%date:~5,2%-%date:~8,2%.%time:~0,2%%time:~3,2%
    
    @echo * * * * * * * * * * * * * * * * * * * * 
    @echo * * * * * * * * * * * * * * * * * * * * 
    @echo * * * * * ORACLE 数据库导入 * * * * * * 
    @echo * * * * * * * * * * * * * * * * * * * * 
    @echo * * * * * * * * * * * * * * * * * * * *
    
    @echo 服务名 = %OrclSid% 
    @echo 用户名 = %ExpUser% 
    @echo 密 码 = %ExpPass% 
    @echo 目 录 = %FileDir% 
    @echo 时 间 = %SysDate%
    
    sqlplus 账号/密码@数据库名 @d:sqlbf/sqld.sql --此处调用删除表数据的sql语句
    
    imp      账号/密码@数据库名 file=d:sqlbf/ss.dmp  ignore=y tables=(aqwt_aqwt)
    @echo 数据库导入完成 
    pause

    以上为导入数据库脚本

          其他数据的导入例子:
     1 将D:daochu.dmp 中的数据导入 TEST数据库中。
       imp rmdb/rmdb123@hz_rmdb  file=d:daochu.dmp
       上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
       在后面加上 ignore=y 就可以了。
     2 将d:daochu.dmp中的表table1 导入
     imp rmdb/rmdb123@hz_rmdb  file=d:daochu.dmp  tables=(table1) 

    1 delete from tablename;
    2 commit;
    3 exit;

    删除表数据的sql语句

    注:

         1. 执行脚本要以管理员身份运行。

         2.要使用exp  imp sqlplus 电脑一定要有oracal客户端,判断是否可用方式 在命令行内输入 exp 或 imp 自然就能看出来。

  • 相关阅读:
    使用 git 托管代码
    转载自网络大神
    i18n 国际化
    转自知乎大神---什么是 JS 原型链?
    转自知乎大神----JS 闭包是什么
    转自知乎大神----JS 的 new 到底是干什么的?
    转载自知乎大神---this 的值到底是什么?一次说清楚
    sql查看本机IP地址
    Python 编码规范(Google)
    Python在mysql中进行操作是十分容易和简洁的
  • 原文地址:https://www.cnblogs.com/ccbaby/p/8523517.html
Copyright © 2011-2022 走看看