1

任何人都知道如何在数组字段中插入条形/管道分隔的数组?

使用逗号它可以工作,但是当我将其更改为 bar 时,它会产生错误“格式错误的数组文字”

示例(作品):

insert into table (arrayfield) values ('{"var1","var2","var3"}')

示例(不起作用):

insert into table (arrayfield) values ('{"var1"|"var2"|"var3"}')

顺便说一句,我使用的是 postgres 8.2 和 PHP,由于各种原因,我不能使用逗号作为分隔符。

4

1 回答 1

1

如果您可以使用不带引号的值,因为您知道数据中没有管道,那么您可以使用:

insert into table (arrayfield) select string_to_array('var1|var2|var3','|');

如果您需要在管道分隔的字符串上引用您的值,那么它会变得复杂。如果是这种情况,那么我认为您应该使用ARRAY['val1','val2','val3']PHP 中的语法正确格式化和引用您的数组。

于 2012-05-31T08:43:08.187 回答