Oracle-将SDO_GEOMETRY转换为WKT吗?

5 oracle oracle-spatial

我对oracle空间非常陌生。

我有一个带有SDO_GEOMETRY列的空间表。在此表中插入POINT数据后,我想以WKT格式检索数据。

这是我所做的:

插入数据-

INSERT INTO new_test (name, geom) VALUES (
'Test', 
SDO_GEOMETRY(
             2001,
             4326, 
             SDO_POINT_TYPE(12,14,NULL), 
             NULL, 
             NULL));
Run Code Online (Sandbox Code Playgroud)

提取数据-

SELECT NAME, SDO_UTIL.TO_WKTGEOMETRY(GEOM) AS point FROM NEW_TEST;
Run Code Online (Sandbox Code Playgroud)

输出-

NAME | POINT
-------------
Test | (null)
Run Code Online (Sandbox Code Playgroud)

为什么我在这里变成空?它不应该显示坐标点吗?

MT0*_*MT0 5

评论太长了 - 不知道为什么它对你不起作用,但我无法复制你的结果:

甲骨文设置

CREATE TABLE new_test ( name varchar2(20), geom SDO_GEOMETRY );

INSERT INTO new_test (name, geom)
VALUES (
  'Test', 
  SDO_GEOMETRY( 2001, 4326, SDO_POINT_TYPE(12,14,NULL), NULL, NULL)
);
Run Code Online (Sandbox Code Playgroud)

查询

SELECT NAME, SDO_UTIL.TO_WKTGEOMETRY(GEOM) AS point FROM NEW_TEST;
Run Code Online (Sandbox Code Playgroud)

输出

NAME POINT                                                                          
---- -----------------
Test POINT (12.0 14.0)
Run Code Online (Sandbox Code Playgroud)