【发布时间】:2017-09-19 19:17:54
【问题描述】:
该函数来自外部库,我无法访问它的源代码,但这里是它的文档:http://desktop.arcgis.com/en/arcmap/10.4/manage-data/using-sql-with-gdbs/st-transform.htm
它声称有两个函数但具有相同的签名,但 Oracle 在标题中给了我错误(我错误地假设)并且不允许我编译该函数。
有没有办法可以跳过这个错误并让它在下面编译我的函数?因为我假设在执行时不会出现此错误。
还是我真的错过了什么?
功能:
create or replace function transform_to_utm_sul_x(fuso varchar,shape st_geometry)
RETURN number
AUTHID CURRENT_USER
AS
utm_x number;
srid INTEGER;
begin
SELECT
wkid_sul
INTO
srid
FROM
limt_fusos_utm
WHERE
zone = fuso and srid is not null and srid <> '';
utm_x := st_x(st_transform(shape, srid));
return utm_x;
end transform_to_utm_sul_x;
堆栈跟踪:
错误(16,47):PLS-00306:调用时参数提示的数量或类型错误 'ST_TRANSFORM_F'
【问题讨论】:
-
能否提供错误信息和错误行?
-
@TedFilippidis 编辑了它
-
我唯一能做的就是你在 ST_TRANSFORM_F 中提供了错误的数据类型,你能提供签名吗?
-
数据类型 st_geometry 是否在您尝试编译此函数的架构中定义?
-
@PatrickBacon 这是问题之一,谢谢