ORA-06550:第 12 行,第 9 列:PL/SQL:ORA-00936:缺少表达式 ORA-06550:第 9 行,第 5 列:PL/SQL:忽略 SQL 语句
ORA-06550: line 12, column 9: PL/SQL: ORA-00936: missing expression ORA-06550: line 9, column 5: PL/SQL: SQL Statement ignored
我正在尝试插入由 SELECT 语句返回的距离值,但是,我收到以下错误 -
ORA-06550:第 12 行,第 9 列:PL/SQL:ORA-00936:缺少表达式 ORA-06550:第 9 行,第 5 列:PL/SQL:SQL 语句被忽略
DECLARE
l_lat VARCHAR2(100);
l_lng VARCHAR2(100);
l_postcode VARCHAR2(8) := :P2_POSTCODE;
BEGIN
brian.GEOCODE_GM_XML (l_postcode, l_lat, l_lng);
INSERT INTO RESTAURANTS_IMAGES_VIEW (DISTANCE)
VALUES
(
SELECT SDO_GEOM.SDO_DISTANCE
(a.location,
SDO_GEOMETRY(2001, 8307, SDO_POINT_TYPE(l_lat, l_lng, null), null, null), 0.005) distance
FROM RESTAURANTS_IMAGES_VIEW a
);
END;
我这里有什么错误吗?
如果SDO_GEOM.SDO_DISTANCE是程序,括号内要根据查询给出具体参数,请在a.location前加上SELECT。
而且,你想做的是:
插入 restaurants_images_view(距离)
select...
来自..
插入后不必使用值。
我正在尝试插入由 SELECT 语句返回的距离值,但是,我收到以下错误 -
ORA-06550:第 12 行,第 9 列:PL/SQL:ORA-00936:缺少表达式 ORA-06550:第 9 行,第 5 列:PL/SQL:SQL 语句被忽略
DECLARE
l_lat VARCHAR2(100);
l_lng VARCHAR2(100);
l_postcode VARCHAR2(8) := :P2_POSTCODE;
BEGIN
brian.GEOCODE_GM_XML (l_postcode, l_lat, l_lng);
INSERT INTO RESTAURANTS_IMAGES_VIEW (DISTANCE)
VALUES
(
SELECT SDO_GEOM.SDO_DISTANCE
(a.location,
SDO_GEOMETRY(2001, 8307, SDO_POINT_TYPE(l_lat, l_lng, null), null, null), 0.005) distance
FROM RESTAURANTS_IMAGES_VIEW a
);
END;
我这里有什么错误吗?
如果SDO_GEOM.SDO_DISTANCE是程序,括号内要根据查询给出具体参数,请在a.location前加上SELECT。 而且,你想做的是:
插入 restaurants_images_view(距离) select... 来自..
插入后不必使用值。