加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在oracle中创建空间数据库时无法更新user_sdo_geom_metadata

发布时间:2020-12-12 16:25:17 所属栏目:百科 来源:网络整理
导读:我正在使用oracle 11g并尝试创建一个空间数据库,我刚从 oracle document复制了示例代码 但是当涉及到更新元数据部分时,它给出了重复的条目错误,我尝试从user_sdo_geom_metadata删除并且它没有给出任何错误,然后再次尝试插入,仍然得到重复的条目错误.我也试过
我正在使用oracle 11g并尝试创建一个空间数据库,我刚从 oracle document复制了示例代码
但是当涉及到更新元数据部分时,它给出了重复的条目错误,我尝试从user_sdo_geom_metadata删除并且它没有给出任何错误,然后再次尝试插入,仍然得到重复的条目错误.我也试过select * from user_sdo_geom_metadata但什么也没得到.
任何人都知道为什么?谢谢

示例代码:

CREATE TABLE cola_markets (
mkt_id NUMBER PRIMARY KEY,name VARCHAR2(32),shape SDO_GEOMETRY);

INSERT INTO cola_markets VALUES(
1,'cola_a',SDO_GEOMETRY(
  2003,-- two-dimensional polygon
  NULL,NULL,SDO_ELEM_INFO_ARRAY(1,1003,3),-- one rectangle (1003 = exterior)
  SDO_ORDINATE_ARRAY(1,1,5,7) -- only 2 points needed to
      -- define rectangle (lower left and upper right) with
      -- Cartesian-coordinate data
));

INSERT INTO user_sdo_geom_metadata
(TABLE_NAME,COLUMN_NAME,DIMINFO,SRID)
VALUES (
'cola_markets','shape',SDO_DIM_ARRAY(   -- 20X20 grid
SDO_DIM_ELEMENT('X',20,0.005),SDO_DIM_ELEMENT('Y',0.005)
 ),NULL   -- SRID
);

错误原因:user_sdo_geom_metadata视图中的给定表和列值对存在重复条目.

只是为了确定,以下显示了什么?
SELECT * FROM USER_SDO_GEOM_METADATA;

字典视图中的对象名称以大写形式存储.因此,如果要从空间元数据中删除现有条目,则需要执行此操作(请注意uppper案例表名称):

DELETE FROM USER_SDO_GEOM_METADATA WHERE TABLE_NAME = 'COLA_MARKETS';
COMMIT;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读