问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么在swiftui中连接postgresql实现增删改查?

发布网友 发布时间:2022-04-09 02:46

我来回答

3个回答

懂视网 时间:2022-04-09 07:08

From this article, I tried to update or delete property of a JSONB column:

CREATE TABLE xxx (id BIGSERIAL, data JSONB);
INSERT INTO xxx(data) VALUES( ‘{"a":1,"b":2}‘ );
SELECT * FROM data;
 id | data 
----+------------------
 1 | {"a": 1, "b": 2}

create the update function:

CREATE FUNCTION jsonb_merge(JSONB, JSONB) 
RETURNS JSONB AS $$
WITH json_union AS (
 SELECT * FROM JSONB_EACH($1)
 UNION ALL
 SELECT * FROM JSONB_EACH($2)
) SELECT JSON_OBJECT_AGG(key, value)::JSONB FROM json_union;
$$ LANGUAGE SQL;

testing:

-- replace
UPDATE xxx SET data = jsonb_merge(data,‘{"b":3}‘) WHERE id = 1;
SELECT * FROM xxx;
 id | data 
----+------------------
 1 | {"a": 1, "b": 3}

-- append
UPDATE xxx SET data = jsonb_merge(data,‘{"c":4}‘) WHERE id = 1;
SELECT * FROM xxx;
 id |  data 
----+-------------------------
 1 | {"a": 1, "b": 3, "c": 4}

The question is:

  1. is there any drawback of using JSONB_EACH (jsonb_merge) instead of JSONB_EACH_TEXT (from the article) in this case?

  2. how to modify the jsonb_merge so if the second parameter property value is null (something like {"b":null}) the value would be erased?

.

-- remove
UPDATE xxx SET data = jsonb_merge(data,‘{"b":null}‘) WHERE id = 1;
SELECT * FROM xxx;
 id | data 
----+-----------------
 1 | {"a": 1, "c": 4}
postgresql postgresql-9.4
share|improve this question edited Mar 20 ‘15 at 10:23 asked Mar 20 ‘15 at 6:06 技术分享 Kokizzu 273312
 
   
add a comment | 

1 Answer 1

active oldest votes
up vote 3 down vote accepted

Question 1
There should be no signicant drawbacks. As the value is converted back to jsonb anyhow I would guess it would be more efficient to keep it that way the whole time.


Question 2
Just replace your function with the following (only the part WHERE key NOT IN ... added):

CREATE FUNCTION jsonb_merge(JSONB, JSONB) 
RETURNS JSONB AS $$
WITH json_union AS (
 SELECT * FROM JSONB_EACH($1)
 UNION ALL
 SELECT * FROM JSONB_EACH($2)
) SELECT JSON_OBJECT_AGG(key, value)::JSONB
 FROM json_union
 WHERE key NOT IN (SELECT key FROM json_union WHERE value =‘null‘);
$$ LANGUAGE SQL;

postgresql删除属性

标签:

热心网友 时间:2022-04-09 04:16

在postgres中当我们执行:drop/alter database XXX的时候的时候,可能会提示: 

ERROR:  database "testdb" is being accessed by other users
DETAIL:  There are 3 other sessions using the database.

这个意思是说,删除数据库失败,因为这里还有3个链接连接到该数据库上,PostgreSQL在有进程连接到数据库时,对应的数据库是不运行被删除的。那么怎么办呢?答案就是:断开连接到这个数据库上的所有链接,再删除数据库。怎么断开呢?在PostgreSQL 9.2 及以上版本,执行下面的语句:

热心网友 时间:2022-04-09 05:34

你需要找到postgresql的swift库,就可以实现了
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果手机微信怎么换漂亮字体(苹果手机微信怎么换行输入) 有什么好用的app转换字体 手写转文字的软件 erp可以看评论地址吗 淘宝评论url是什么意思? 揭秘:码牌支付风控升级,背后真相揭秘 电脑电视直播软件哪个好用什么软件好电脑看电视直播 潼南子同街学区是哪些 三极管BU406价格和参数? 火锅料放在冰柜忘了插电一个星期给会坏了吗 火锅的设备有哪些 木耳水饺在冰箱冻了几天还能吃吗 泡发好的黑木耳用来包饺子,然后冷冻起来,过几天再吃,会中毒吗 水耗子学名是什么 麝鼠的生活习性 我们说的水耗子是不是麝香鼠,、 老鼠的毛比什么软? 水耗子是几级保护动物 水耗子是国家一级保护动物吗 水耗子拉网器侧轮漏水怎么办 用电脑笔记本做电影直播,连续开一个月,耗电多少? 水耗子又叫什么 你好水耗子嗑第笼有啥办法 我的电脑开一个月会怎么样``` 办公室行政管理制度的(二)行政办公纪律管理规定 求各位养鱼专家我家养鱼池里有水耗子怎么办? 我刚开始做办公室行政管理工作,有好多事情不太懂,每天也不知道该做... 水里的老鼠是否吃鱼 笔记本电脑开机一个礼拜不关机,对电脑有损坏吗? 如何做好办公室行政管理工作? 笔记本一个月天天开15个小时能用多少度电? 黑木耳三鲜水饺冷冻可以吃吗 暖气片的构造及安装方法? 每年存2万三年定期,到期自动转存5年一共有多少利息 每年存2万 存5年10年后取出12500元利息多少 我想发1个帖子 就是推荐游戏的那种 帮忙想个吸引人的贴名 2万存定期5年多少钱 在银行存了2万,死期5年利息是多少。 2万存5年到建行多少利息 自己安装的锅炉暖气,不会自然循环?帮忙看看图,说明下情况,谢谢!! 每年存两万连续存5年,按现在的利息到期本息合计多少? 小米无线wifi一直出现身份验证 小米路由器设置成功之后,怎么打不开网页认证 softether client连接错误1怎么办? 用softether 翻强,总是错误代码1或者2,怎么办? 无法使用 softether client老是 错误代码1 SoftEther Client连接不上怎么办? 电脑开机提示softether  client rpc port open failed 黑暗之魂3怎么双值武器,就是双手拿刀砍 10KV高压柜中零序CT过电压是什么意思吗? 10kV不接地系统中为何要安装零序CT,IA+IB+IC不是等于0吗?作用是什么?