我有以下问题。
我将从webservice接收输入作为文本插入到某个psql表中。假设
创建表测试(id serial,myvalues text [])
收到的输入将是:
insert into test(myvalues) values ('this,is,an,array');
我想到的第一个想法是在插入
之前创建一个触发器create function test_convert() returns trigger as $BODY%
BEGIN
new.myvalues = string_to_array(new.myvalues,',')
RETURNS NEW
END; $BODY$ language plpgsql
但这不起作用
答案 0 :(得分:0)
假设您收到以下格式this is an array
的文字,并且您希望将其转换为this,is,an,array
,那么您可以使用string_to_array('this is an array', ' ')
并将其转换。但是,如果您收到逗号分隔,那么您可以使用它。
答案 1 :(得分:0)
您可以使用string_to_array
函数将字符串转换为插入查询中的字符串数组:
INSERT INTO test ( myvalues )
VALUES ( string_to_array( 'this,is,an,array', ',' ) );