Arrays 如何将数组数据插入表中

Arrays 如何将数组数据插入表中,arrays,postgresql,Arrays,Postgresql,我正在尝试将一些数据插入到包含数组的表中 INSERT INTO SUBURB VALUES ( 'Perth', '5684', SDO_GEOMETRY( 2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,1003,1) SDO_ORDINATE_ARRAY(391209,6464720 390919,6463010 392833,6463280 392902,6464290 391209,6464720) )

我正在尝试将一些数据插入到包含数组的表中

INSERT INTO SUBURB VALUES (
'Perth', 
'5684',
SDO_GEOMETRY(
    2003,
    NULL,
    NULL,
    SDO_ELEM_INFO_ARRAY(1,1003,1)
    SDO_ORDINATE_ARRAY(391209,6464720 390919,6463010 392833,6463280 392902,6464290 391209,6464720)
    )
);

我在SDO坐标数组行上遇到语法错误,无法解决此问题。

以下语法错误

SDO_ORDINATE_ARRAY(391209,6464720 390919,6463010 392833,6463280 392902,6464290 391209,6464720)
postgressql中数组的一般格式为

'{ val1 delim val2 delim ... }'
如果这是一维数组,请将空格替换为逗号

如果要存储多维数组,请使用花括号

e、 g

参考文献

要将数组值作为文字常量写入,请将元素括起来 值,并用逗号分隔。(如果你知道的话 C、 这与初始化结构的C语法没有什么不同 可以在任何元素值周围加双引号,并且必须这样做 包含逗号或大括号。(更多细节见下文)因此, 数组常量的一般格式如下所示:


SDO\u ELEM\u INFO\u数组(11003,1)
Thank You@a\u horse\u with\u no\u name后缺少逗号。现在它只是将语法错误移到secon坐标集:error:syntax error位于或接近“390919”。有什么想法吗?你在这里漏掉了一个逗号6463001392833,后面是6464290391209。在SDO_坐标_数组上用逗号替换空格(空格)
'{{1,2,3},{4,5,6},{7,8,9}}'