DBLINK访问LOB问题(2008-02-15 15:19:28)转载
http://blog.csdn.net/hailang99/archive/2007/09/20/1793405.aspx
在本地用select语句访问远程,如果远程表有CLOB字段的话则会有错:ora-22992;
如果真的想看到clob字段的内容的话就得在本地建立一个表,用下面两条语句:
我刚才试验insert into table select * from remote table成功
remote table含有CLOB
总结:在我的环境中成功
(1)create table aaa select * from remote table
(2)insert into table select * from remote table
不过网上也有以下说法,虽然有错,不过也是一种方法,
通过临时表从DBLink中获取Blob对象2006-12-05 20:37做系统集成时,通过Database Link共享数据是不错的选择。不过真正使用DBLink时却碰到一个不小的问题:从远程数据库上查询Blob字段时总返回ORA-22992错误,如下:
select blobcolumn from remoteTable@dl_remote;
ORA-22992: 无法使用从远程表选择的 LOB 定位器
查找了一下解决方法,有人提出了采用物化视图可以解决这个问题。物化视图唯一的缺陷在于同步机制的问题,如果同步时间设置过短,则占用大量的系统资源,给服务器带来极大的压力;如果设置时间过长,前台用户不可接受。
后来还是AskTom给出了极好的解决方案:使用全局临时表。
SQL> create global temporary table foo
2 (
3 X BLOB
4 )
5 on commit delete rows;
Table created
SQL> insert into foo select blobcolumn from remoteTable@dl_remote where rownum = 1;
1 row inserted
SQL>
插入本地临时表之后,在本地的操作就没有任何问题了。
至于为什么临时表可以直接插入,而永久表为什么不能插入,本人未做具体研究?/
分享到:
相关推荐
oracle通过ODBC建立dblink访问SqlServer数据库配置
### Oracle通过ODBC建立DBLink访问SQLServer数据库 在企业级应用环境中,不同数据库系统间的交互变得越来越频繁。为了实现Oracle数据库与SQLServer数据库之间的数据交换,可以通过多种方式实现连接,其中一种较为...
### Oracle 10g 或 11g 通过 DBLink 访问 SQL Server 数据库 #### 概述 本文档详细介绍了如何在Oracle 10g或11g环境中使用DBLink来访问SQL Server数据库的方法。这种方法对于那些习惯于使用Oracle进行数据库操作的...
Oracle10g通过DBLink访问MySQL数据 安装环境:Windows_Server2003, Oracle10gR2, MySQL4(服务器版在另外电脑上),MySql-Connector3.51(客户端ODBC驱动) 。
dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink
### Oracle10g通过DBLink访问MySQL数据 在企业级应用环境中,经常会出现不同数据库系统之间的数据交互需求。本文将详细介绍如何配置Oracle10g数据库,使其能够通过DBLink访问MySQL数据库中的数据。这一功能对于实现...
Oracle数据库的跨库访问是通过DBLINK(Database Link)机制实现的,这允许用户在一个数据库中执行查询,同时访问另一个远程数据库的数据。DBLINK提供了一种透明的方式,使得分布式数据库系统中的数据能够被轻松地...
标题与描述均提到了"DBLINk",这是一个在数据库领域中相对专业且特定的概念,尤其是在Oracle数据库管理系统中。...然而,合理设计和管理DBLINK,同时关注其潜在的安全性和性能问题,是确保其优势得到充分发挥的关键。
- 此处`scott.tb_test@to_bylw`表示通过名为`to_bylw`的DBLink访问的远程数据库中的`scott.tb_test`表。 - **跨库查询**:利用DBLink可以轻松地实现跨数据库的数据查询和处理,这对于数据分析和报表生成非常有用。 ...
在IT行业中,数据库链接(DBLINK)是一种非常实用的功能,它允许用户在一个数据库实例中访问另一个数据库实例的数据,而无需直接连接到目标数据库。本文将详细介绍如何创建DBLINK连接串、利用DBLINK访问指定数据库中...
DBLink(Database Link),即数据库链接,是一种允许从一个Oracle数据库访问另一个Oracle数据库的技术。它通过建立两个数据库之间的逻辑连接,使得在一个数据库(源数据库)中可以直接查询、更新另一个数据库(目标...
DBLink在进行跨数据库操作时非常有用,它简化了多数据库环境中的数据交互,但同时也需要注意安全性问题,因为DBLink可能会暴露远程数据库的敏感信息。因此,正确管理和限制DBLink的使用权限至关重要。
DBLink提供了一种方式来访问远程数据库中的数据,而无需建立物理连接。 什么是CLOB字段? CLOB(Character Large OBject)是Oracle数据库中的一个数据类型,用于存储大量的字符数据。CLOB字段可以存储大量的文本...
### Oracle DBLink创建过程及快照同步方法 #### 一、Oracle DBLink概念与创建步骤 DBLink(Database Link)是Oracle提供的一种机制,用于在不同的Oracle数据库实例之间建立连接,实现跨数据库查询、更新等功能。它...
Oracle数据库提供了异构服务的功能,允许从Oracle数据库实例访问其他数据库系统的数据,例如MySQL...DBLink的使用大大扩展了Oracle数据库的数据处理能力,使用户能够在单个数据库操作环境中访问和操作多个异构数据源。
私有dblink只有创建者可以访问,其上的同义词不能被其他用户访问。 二、 创建dblink 创建dblink需要使用CREATE DATABASE LINK语句,语法如下: ``` CREATE [PUBLIC] DATABASE LINK link CONNECT TO username ...
这里,每条命令都是为了在本地创建一个同义词,指向通过`bb`dblink访问的远程表,进一步简化了对远程数据的访问。 4. **权限撤销**:虽然示例中没有给出具体的权限撤销代码,但`revoke create database link from ...
这种连接方式允许用户在一个数据库中执行SQL语句时访问另一个数据库的数据。 ##### 1. 配置Oracle DBLink 在配置Oracle DBLink之前,首先需要确保网络连接配置文件`network/admin/tnsnames.ora`中包含了目标数据库...
使用 DBlink,可以实现数据的实时同步、数据的远程访问和数据的复制等功能。DBlink 的使用可以提高数据的可用性和可靠性,提高业务的效率和效果。 使用 DBlink 连接 Oracle 和 MySQL 数据库需要逐步进行配置和测试...
Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置