sql语句
update d_area set
coordinate=mdsys.sdo_geometry(2003,8307,null,mdsys.sdo_elem_info_array(1,1003,1),
mdsys.sdo_ordinate_array(
119.65415,29.14556,119.64824,....))
where id=123;
坐标少时更新没有问题,如果坐标对多了就会报错ora-00939:to many arguments for function;
用什么方式替代解决呢,
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

oracle空间字段mdsys.sdo_geometry存储多边形,报错ora-00939:to many arguments for function
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
1条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
liuyinhuan0409 2012-08-15 02:21关注据说这是一个SQL级别的限制,当SDO_ORDINATES数组中插入一个超过1000个坐标的SDO_GEOMETRY时,可能引发该错误。可以通过创建一个保存该几何体的PL/SQL变量(在下面的代码中被称为geom)来避免这一错误,之后将该变量绑定到update SQL语句中:
[code="sql"]
CREATE OR REPLACE PROCEDURE p_test is
DECLARE geom mdsys.sdo_geometry; -- PL/SQL variable to store the geometry with >999 ordinates
BEGIN
-- construct the geometry here
geom := mdsys.sdo_geometry(2003,
8307,
null,
mdsys.sdo_elem_info_array(1, 1003, 1),
mdsys.sdo_ordinate_array(119.65415,
29.14556,
119.64824
--,....写全多个坐标值
));-- update the geometry in the d_area table using dynamic SQL
EXECUTE IMMEDIATE 'update d_area set
coordinate=:gm where id = 123'
USING geom;
END;[/code]
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容

- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
- 2020-03-02 07:50回答 1 已采纳 相关组件出现问题,重装相关组件即可。 ```sql --卸载EXFSYS $ sqlplus / as sysdba SQL> spool uninstall.txt SQL>
- 2013-01-08 06:28回答 1 已采纳 The function returns a CLOB, so there should be no reason why you can't just call it from a SELECT
- 2015-11-16 02:01回答 1 已采纳 解决方法:删除数据库database,再重新建立数据库。默认分配两个用户sys和system,设置密码为sys/sys,system/sys,使用命令行创建立表空间 tablespace,创建用户并
- 2021-05-05 18:15瀚厨娘的博客 1、ORA-13226:没有空间索引接口将不被支持当使用一个空间操作符时,如果没有使用空间索引导致该操作符不能被完成将会返回该错误。这可能会发生在当你使用的列上没有空间索引、或者优化器没有选择以所用为基础进行...
- 2010-07-01 14:14回答 2 已采纳 看看这个是不是对你有所帮助 [url]http://hi.baidu.com/rtsbtx/blog/item/841c4f1f44ca02c3a786693b.html[/url]
- 2009-04-18 14:02回答 3 已采纳 你说这些在上面文档中都有解决,下载一份源代码,就可以看到。 必须说明的是,不管是你技术处于什么层次,不要依赖IDE。 myeclipse 我用过一次,06年我才用eclipse,之前都是用jbui
- 2019-09-26 22:57dhptkq9465的博客 1、ORA-13226:没有空间索引接口将不被支持 当使用一个空间操作符时,如果没有使用空间索引导致该操作符不能被完成将会返回该错误。这可能会发生在当你使用的列上没有空间索引、或者优化器没有选择以所用为基础进行...
- 2017-11-30 01:11gaoying1234的博客 1、ORA-13226:没有空间索引接口将不被支持 当使用一个空间操作符时,如果没有使用空间索引导致该操作符不能被完成将会返回该错误。这可能会发生在当你使用的列上没有空间索引、或者优化器没有选择以所用为基础进行...
- 2016-03-02 13:40badman250的博客 ORA-12500: TNS:listener failed to start a dedicated server process Cause: The process of starting up a dedicated server process failed. The executable could not be found or the environment may be se
- 2016-03-02 13:53badman250的博客 Cause: An attempt was made to create an index that refers to the ORA_ROWSCN pseudo-column, either directly or in an expression. Action: Do not use ORA_ROWSCN to define an index on a table. ORA-...
- 2021-05-03 19:06段正淳你竟然的博客 常见的错误1、ORA-13226:没有空间索引接口将不被支持当使用一个空间操作符时,如果没有使用空间索引导致该操作符不能被完成将会返回该错误。这可能会发生在当你使用的列上没有空间索引、或者优化器没有选择以所用为...
- 2007-05-05 02:23weixin_34409822的博客 (SDO_ROOT_MBR mdsys.sdo_geometry) * ERROR at line 2: ORA-01430:column being added already exists in table 这是一个已知的问题,并可被忽略。要继续数据库创建过程,请单击 "Ignore" 按钮: ...
- 2023-04-14 03:05sensenlin91的博客 oracle转postgresql,ora2pg使用说明。
- 没有解决我的问题, 去提问
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司