iis服务器助手广告广告
返回顶部
首页 > 资讯 > 错误编码 >ORA-54505: ring does not lie on a plane ORACLE 报错 故障修复 远程处理
  • 523
分享到

ORA-54505: ring does not lie on a plane ORACLE 报错 故障修复 远程处理

报错故障ring 2023-11-05 20:11:40 523人浏览 泡泡鱼
摘要

文档解释 ORA-54505: ring does not lie on a plane Cause: The ring was not flat. Action: Make sure all of the vertices of the

文档解释

ORA-54505: ring does not lie on a plane

Cause: The ring was not flat.

Action: Make sure all of the vertices of the ring are on the same plane.

ORA-54505:环不在一个平面上

错误说明

ORA-54505是由oracle Database中的一个Geometry对象用RING函数创建的圆环和不是用CIRCULARARC或ARC函数创建的圆环所引发的一个句法错误,当这个Geometry对象经过算术计算的结果不在一个平面时,Oracle就会报ORA-54505。

常见案例

当程序尝试从一个Geometry 对象中创建一个环时,可能会引发ORA-54505,以下示范代码将会抛出这个异常:

create table circle_test (id number, circle sdo_geometry);

insert into circle_test values(1001, sdo_geometry (2003, 8307, null, sdo_elem_info_array(1, 1003, 6), sdo_ordinate_array (20, 20, 22, 22, 20, 20)));

select sdo_ring.find_circle(circle) from circle_test;

— ORA-54505: Ring does not lie on a plane

解决方法

要解决ORA-54505错误,主要是通过正确使用RING、CIRCULARARC以及ARC函数创建Geometry 对象。在上述示范代码中,可以使用RING和CIRCULARARC来创建圆环:

create table circle_test (id number, circle sdo_geometry);

insert into circle_test values(1001, sdo_geometry (2003, 8307, null,

sdo_elem_info_array(1, 4, 3),

sdo_ordinate_array (20, 20, 22, 22, 20, 20)));

— 使用RING

select sdo_ring.find_circle(circle) from circle_test;

— 使用CIRCULARARC

select sdo_circulararc.find_circle(circle) from circle_test;

此外,还可以使用ARCROTATE函数在较大的角度中旋转环,从而避免ORA-54505错误:

insert into circle_test values(1001, sdo_geometry (2003, 8307, null,

sdo_elem_info_array(1, 4, 9),

sdo_ordinate_array (20, 20, 22, 22, 22, 22, 20, 20, 22, 22)));

select sdo_arcrotate.find_circle(circle) from circle_test;

--结束END--

本文标题: ORA-54505: ring does not lie on a plane ORACLE 报错 故障修复 远程处理

本文链接: https://www.lsjlt.com/news/542436.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作