开发者博客:www.developsearch.com
通过临时表从DBLink中获取Blob对象
做系统集成时,通过Database Link共享数据是不错的选择。不过真正使用DBLink时却碰到一个不小的问题:从远程数据库上查询Blob字段时总返回ORA-22992错误,如下:
select blobcolumn from remoteTable@dl_remote;
ORA-22992: 无法使用从远程表选择的 LOB 定位器
查找了一下解决方法,有人提出了采用物化视图可以解决这个问题。物化视图唯一的缺陷在于同步机制的问题,如果同步时间设置过短,则占用大量的系统资源,给服务器带来极大的压力;如果设置时间过长,前台用户不可接受。
后来还是AskTom给出了极好的解决方案:使用全局临时表。
SQL> create global temporary table foo ( X BLOB ) on commit delete rows; Table created SQL> insert into foo select blobcolumn from remoteTable@dl_remote where rownum = 1; 1 row inserted SQL>
插入本地临时表之后,在本地的操作就没有任何问题了。
至于为什么临时表可以直接插入,而永久表为什么不能插入,本人未做具体研究,Tom也没有说明。
BLOB、CLOB、LONG、LongRaw数据类型
LONG: 可变长的字符串数据,最长2G,LONG具有VARCHAR2列的特性,可以存储长文本一个表中最多一个LONG列
LONG RAW: 可变长二进制数据,最长2G
CLOB: 用来存储单字节的字符数据
NCLOB: 用来存储多字节的字符数据
BLOB: 用于存储二进制数据
BFILE: 存储在文件中的二进制数据,这个文件中的数据只能被只读访。但该文件不包含在数据库内。
CLOB,NCLOB,BLOB都是内部的LOB(Large Object)类型,最长4G,没有 LONG只能有一列的限制
我要保存图片、文本文件、Word文件各自最好用哪种数据类型?
--BLOB最好,LONG RAW也不错,但Long是oracle将要废弃的类型,因此建议用LOB。
注意:cob类型的不能通过dblink来访问,所以如果保存图片还是用long raw比较要些
相关推荐
简单写的一个小工具,把图片存入oracle中,按clob和blob两种方式存储,并读取图片
支持的数据类型包括:NUMBER, CHAR, VARCHAR2, NCHAR,NVARHCAR2, LONG, DATE, RAW, LONG RAW, BLOB, CLOB, TIMESTAMP (9i+) , BINARY FLOAT, BINARY DOUBLE (10g+) 导出的数据格式包括纯文本和DMP文件两种。以纯...
支持的数据类型包括:NUMBER, CHAR, VARCHAR2, NCHAR,NVARHCAR2, LONG, DATE, RAW, LONG RAW, BLOB, CLOB, TIMESTAMP (9i+) , BINARY FLOAT, BINARY DOUBLE (10g+) 全面支持LOB字段: 支持CLOB、NCLOB和BLOB CLOB...
LONG RAW 可变长度的二进制数据 最大长度2G 同上 BLOB 二进制数据 最大长度4G CLOB 字符数据 最大长度4G NCLOB 根据字符集而定的字符数据 最大长度4G BFILE 存放在数据库外的二进制数据 最大长度4G ROWID 数据表中...
1、 大数据量的表,比如大于2GB。一方面2GB文件对于32位os是一个上限,另外备份时间长。 2、 包括历史数据的表... 最多可以分成64000个分区,但是具有LONG or LONG RAW列的表不可以,但是有CLOB or BLOB列的表可以。
5.支持的数据类型包括:NUMBER, CHAR, VARCHAR2, NCHAR,NVARHCAR2, LONG, DATE, RAW, LONG RAW, BLOB, CLOB, TIMESTAMP (9i ) , BINARY FLOAT, BINARY DOUBLE (10g ) 6.全面支持LOB字段:支持CLOB、NCLOB和BLOBCLOB...
4-4 Raw 和 Long Raw 数据类型 ―用于存储二进制数据 用于存储二进制数据 LOB 数据类型 ―CLOB ―BLOB ―BFILE 数据定义语言 数据定义命令 ―CREATE 命令 ―ALTER 命令 ―DROP 命令 ―TRUNCATE 命令 数据操纵语言 ...
4-4 Raw 和 Long Raw 数据类型 ―用于存储二进制数据 用于存储二进制数据 LOB 数据类型 ―CLOB ―BLOB ―BFILE 数据定义语言 数据定义命令 ―CREATE 命令 ―ALTER 命令 ―DROP 命令 ―TRUNCATE 命令 数据操纵语言 ...
可以帮你对oracle整体知识的掌握 基本数据类型: CHAR(n) 定长字符串 最大长度为2000 VARCHAR2(n) 变长字符串 最大长度为4000字节 没有默认长度必须指定 ...LONG RAW 能存储2GB的二进制信息,建议所有开发中都使用CLOB
long raw 1~2GB 可变长二进制数据 LOB数据类型 clob 1~4GB 只能存储字符数据 nclob 1~4GB 保存本地语言字符集数据 blob 1~4GB 以二进制信息保存数据 三、 DDL语言 1. Create table命令 用于创建表。在创建表时,...
第一部分 Oracle SQL*PLUS基础 23 第一章 Oracle数据库基础 23 §1.1 理解关系数据库系统(RDBMS) 23 §1.1.1 关系模型 23 §1.1.2 Codd十二法则 24 §1.2 关系数据库系统(RDBMS)的组成 24 §1.2.1 RDBMS 内核 24...
MyOraDump 是一个程序,它将存储在大多数基本 oracle 类型中的 oracle 数据导出为文本文件... 此外还支持 BLOB、CLOB、NCLOB 以及 RAW、LONG 和 LONG RAW。 输出可以采用多种格式,如分隔值、JSON、MySQL 转储和 HTML。
有关数据修改,LONG, LONG RAW, BLOB,CLOB的数据类型全都可以对应。 因为能马上显示输入的SQL语句的执行计划,所以可以一边确认输出结果和执行计划,一边创建出高效的SQL语句。可以实现从资源浏览器的拖放功能,...