解析javascript对象以更新postgresql表

hrysbysz  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(252)

我有一个javascript对象,如下所示。我想使用node.js应用程序中的postgres函数调用插入此对象中的用户。我需要帮助做postgres功能。
我需要检查用户是否存在,如果存在,我将更改用户表,如果不存在,我将插入用户表。

insert: {
  jSmith: {name: 'John Smith', email: 'JSmith@gmail.com'},
  elisa: {name: 'Eli Lisa', email: 'ELisa@gmail.com'}
}
vktxenjb

vktxenjb1#

你可以在哈希表上循环使用postgres UPSERT (更新或插入)。如果没有任何冲突,它基本上会在表中插入一条记录。但如果给定约束上有任何冲突,它将执行更新。更多信息:postgres upsert
下面是它的基本方法

Object.values(insert).forEach((row) => {
        stmt = `Insert into <table-name> (name, email, other-columns...) values ('${row.name}', '${row.email}', ....)
        On Conflict (name)
        Do
        Update <table-name> set <perform-updating>`

    // Execute the above statement
})

在上述算法中,还可以使用prepared语句代替字符串插值。

相关问题