日期:2014-05-17  浏览次数:20619 次

oracle导数据clob字段放html字符串
1.遇到问题,文章表里的内容字段类型是clob,里面存放的是类似<html><body>....</body></html>这种字符串

2.第一次,用pl/sql查询整表全选右键导出成sql文件,发现文件里的内容字段全为空,失败

3.第二次,用PL/SQL导出数据位xx.dmp文件,用PL/SQL导入,没反应,表里也没数据。失败

4.第三次,用命令行导出,导出命令为:
exp userid=username/password@service buffer=204800 tables=table1,table2 compress=y file=F:\xxx.dmp log=F:\xxx.log
再用命令行导入,命令为:
imp username/password@service fromuser=username touser=username file=F:\xxx.dmp log=F:\xxx.log commit=y ignore=y buffer=204800
导入失败,报错误IMP-00010: not a valid export file, header failed verification
失败

5.用PL/SQL导出sql文件,但是不是全选右键,而是结果集右上方的“导出结果查询”按钮,发现文件中有内容字段并且不为空,于是执行sql语句,出错,因为内容里包含特殊字符,pl/sql认为是参数占位符,于是执行命令  set def off,sql执行,但是报错:
ORA-01704: string literal too long  失败

6.继续用oracle命令行导出,但是找了一台装了oracle并且版本和导出机器一样的机器,进行导入,成功,所以用命令行导这种数据肯定能成功,但是导数据的时候注意导出客户端和导入客户端 的版本一致。

注意:精简版的oracle客户端没有导入、导出功能,没精简不知道有没有,但是装了完整oracle服务的机器带的客户端,一定有。sql脚本,还是一筹莫展。