ホームページ > データベース > mysql チュートリアル > Oracle通过DBLink访问远程数据库的LOB字段报ORA-22992的解决方法

Oracle通过DBLink访问远程数据库的LOB字段报ORA-22992的解决方法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-07 17:16:13
オリジナル
1540 人が閲覧しました

最近在做一个照片采集的功能,照片采集是在外网库,而外网在把照片采集后,内网会读取外网库中的照片(照片字段是BLOB类型),如

最近在做一个照片采集的功能,照片采集是在外网库,而外网在把照片采集后,内网会读取外网库中的照片(照片字段是BLOB类型),如果内网直接通过select语句查询外网库的照片,则会报ORA-22992: cannot use LOB locators selected from remote tables的错误,网上查了一下解决方法,记录下来以便以后查看。

方法一:

内网建一个包含大字段(BLOB)的表,然后通过inser into … select … from …@dblink把数据插入到内网的库表中,,直接操作内网库表即可。如:

创建表:

  • 插入数据:

  • 这样就把外网表outer_table中的数据写到内网表inner_table中了。

    方法二:

    在本地创建一张和dblink远程端相同的全局临时表,然后在查询临时表:

    --创建临时表:

  • 插入数据:

  • 这样就把数据写到临时表了,不过提交之后数据就被删除了(临时表的特性)。 
    其实这两种方法都差不多,只不过一个是用的临时表,一个是用的是永久性的表。

    linux

  • このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート