ORA-22804 导致 ORA-04043 对象不存在不能删除

create or replace view vw_350 as
select b.dwjc, c.objectid as objectid,t.jh,c.sd as sd,t.xm,t.djjid as zdbh,
st_minx(c.shape) x,st_miny(c.shape) y,c.fssj as fssj 
from szga_ud_user t,
szga_ud_unit b, c
where t.dwid=b.id and t.djjid = c.zdbh;

创建dblink后,远程建立跨库视图。其中因有个字段的类型为ST_GEOMETRY(空间数据库用的) 所以就不能建立了,无法查询。

oracle ora-22804在对象表或用户定义的类型列上不允许执行远程操作

 

通过数据链路查询其他数据库中的表,因为表中有自定义的类型,所以报错:ORA-22804,

解决办法:

查询远程数据库表中自定义的类型的type_oid;

Select * From All_Types

然后在你所在的数据库中建立一个相同的类型,使用OID

CREATE OR REPLACE TYPE "T_CAR"  oid 'F55F98E7D0BB85F4E03010AC0562294F'()

这样就可以查询数据链路中含有自定义类型的表了

 

这个无法解决

导致ORA-04043

加了两个双引号,马上加上双引号删除。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值