所以我一直试图以0运气在互联网上找到答案。
postgres 是否支持在单个字段中包含对象数组,例如
[
{
key: value,
another: value
},
{
key: value,
value: key
}
]
并将其保存到单个字段?
还有你会如何演奏单曲INSERT
或UPDATE
会是:UPDATE db SET value='[{ key: val }, { key: val }]'
??
所以我一直试图以0运气在互联网上找到答案。
postgres 是否支持在单个字段中包含对象数组,例如
[
{
key: value,
another: value
},
{
key: value,
value: key
}
]
并将其保存到单个字段?
还有你会如何演奏单曲INSERT
或UPDATE
会是:UPDATE db SET value='[{ key: val }, { key: val }]'
??
我猜这取决于您对对象的定义。
您可以使用 JSON:http ://www.postgresql.org/docs/current/static/functions-json.html并插入非结构化数据:
# create table test (field json);
CREATE TABLE
# insert into test values ('[1,2,3]');
INSERT 0 1
# insert into test values ('[{"key": "value"}, {"key": "value"}]');
INSERT 0 1
# select * from test;
field
--------------------------------------
[1,2,3]
[{"key": "value"}, {"key": "value"}]
还支持数组:http ://www.postgresql.org/docs/current/static/arrays.html
Postgres 支持任何有效的 json 值,包括 json 数组。您将使用的是单个 json (jsonb) 列,而不是 Postgres 数组:
create table example (id int, val jsonb);
insert into example
values (1, '[{ "name": "aga" }, { "gender": "female" }]');
select * from example;
id | val
----+-----------------------------------------
1 | [{"name": "aga"}, {"gender": "female"}]
(1 row)