如何将元素插入到具有数组字段的列中?

时间:2018-02-06 12:08:39

标签: sql postgresql

我创建了一个表格如下

 CREATE TABLE COMPANY (NO INT PRIMARY KEY  NOT NULL, ID INT[] NOT NULL)

此处ID是数组类型。

现在,当我尝试使用

插入元素时
INSERT INTO company(no, id)VALUES (4, {1,2,3});
ERROR:  syntax error at or near "{"
LINE 3:  VALUES (4, {1,2,3});

有错误。 有人可以帮忙解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

根据https://www.postgresql.org/docs/current/static/arrays.html#ARRAYS-INPUT

添加引号:

  

要将数组值写为文字常量,请将该元素括起来   花括号内的值并用逗号分隔。

t=# INSERT INTO company(no, id)VALUES (4, '{1,2,3}');
INSERT 0 1

或使用array[]

  

也可以使用ARRAY构造函数语法

t=# INSERT INTO company(no, id)VALUES (5, array[1,2,3]);
INSERT 0 1