Oracle 10g dmp文件的导入导出

Oracle数据导入dmp文件可以是“某个用户下的数据库”,也可以是“某张表”,这里以导入数据库为例说明 :

<方法1:  使用客户端Enterprise Manager Console>

1.用SYS用户名,以DBA的身份在ie中登入到数据库(ORACLE客户端Enterprise Manager Console)

 

 

2.在方案->用户与权限->用户

  新建用户

  同时给该用户授予“角色”:

  CONNECT,DBA,EXP_FULL_DATABASE,IMP_FULL_DATABASE,RESOURCE

  授予系统权限:

  ALTER USER,COMMENT ANY TABLE,CREATE ANY VIEW,CREATESESSION,

  CREATE USER,DELETE ANY TABLE,DROP ANY VIEW,DROP USER,

  UNLIMITED TABLESPACE

3.在命令行下执行:(一定完全按照以下步骤)

$imp 用户名/口令  回车

填写导入文件路径:EXPDAT.DMP>c:\a.dmp

输入插入缓冲区大小:默认不填 回车

只列出导入文件的内容:   回车

忽略创建错误:yes

导入权限:yes

导入表数据:yes

导入整个导出文件:yes

等待……

成功终止导入,但出现警告。

例如:

4.打开PLSQL  Developer,用新建的用户名和口令,以normal身份登录

5.在tables中可以查看导入到表

6.到此结束(这个问题折腾了一上午)

导出:

exp username/password@服务名 file=文件路径及文件名

服务器名的获取:

1、 先登录conn 用户名/密码

2、 执行下列sql命令:select name from v$database

例:我的数据库pcms的用户名和密码都是mmis,服务名为pcms 我要导出到D盘下的pcms.dmp文件,可以这样写:

exp mmis/mmis@pcms file=d:\pcms.dmp

SQL> $exp 用户名/密码@服务名 file=路径+文件名

如下图所示:

$exp gengjingzhen/********@XE file=d:grains.dmp

大家知道Colb吗?

CLOB定义

  数据库中的一种保存文件所使用的类型。

  Character Large Object

  SQL 类型 CLOB 在 JavaTM 编程语言中的映射关系。SQL CLOB 是内置类型,它将字符大对象 (Character Large Object) 存储为数据库表某一行中的一个列值。默认情况下,驱动程序使用 SQL locator(CLOB) 实现 Clob 对象,这意味着 CLOB 对象包含一个指向 SQL CLOB 数据的逻辑指针而不是数据本身。Clob 对象在它被创建的事务处理期间有效。

  在一些数据库系统里,也使用Text 作为CLOB的别名,比如SQL Server

CLOB和BLOB的区别

  CLOB使用CHAR来保存数据。 如:保存XML文档。

  BLOB就是使用二进制保存数据。 如:保存位图。

JAVA里面对CLOB的操作

  在绝大多数情况下,使用2种方法使用CLOB

  1 相对比较小的,可以用String进行直接操作,把CLOB看成字符串类型即可

  2 如果比较大,可以用 getAsciiStream 或者 getUnicodeStream 以及对应的 setAsciiStream 和 setUnicodeStream 即可

  读取数据

  ResultSet rs = stmt.executeQuery("SELECT TOP 1 * FROM Test1");

  rs.next();

  Reader reader = rs.getCharacterStream(2);

  插入数据

  PreparedStatement pstmt = con.prepareStatement("INSERT INTO test1 (c1_id, c2_vcmax) VALUES (?, ?)");

  pstmt.setInt(1, 1);

  pstmt.setString(2, htmlStr);

  pstmt.executeUpdate();

  更新数据

  Statement stmt = con.createStatement();

  ResultSet rs = stmt.executeQuery("SELECT * FROM test1");

  rs.next();

  Clob clob = rs.getClob(2);

  long pos = clob.position("dog", 1);

  clob.setString(1, "cat", len, 3);

  rs.updateClob(2, clob);

rs.updateRow();      

Ok,教程就到这里了,这也是今天额收获。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值