postgresql - AdonisJS - 从数组中更新许多项目
问题描述
因此,我将 AdonisJS 和 PostgreSQL 用于我的后端,并且我试图找到一种方法来更新数组中的许多内容,而无需执行循环,无论是通过 SQL 还是使用 AdonisJS 模型方法。
我有一个像这样的数组(项目数不定):
[
{
"id":5,
"name":"aaaaaaa",
"price":"5689.78",
},
{
"id":6,
"name":"bbbbb",
"price":"5689.78",
},
{
"id":7,
"name":"cccc",
"price":"5689.78",
}
]
假设我有一个名为 products 的表
解决方案
您可以使用清晰的视角。
const Product = use('App/Models/Product')
const productData = request.collect(['id', 'name', 'price'])
await Product.createMany(productData)
该
createMany
方法进行n
查询次数而不是进行批量插入,其中n
是行数。
或者您可以使用此代码进行批量插入。您必须明确定义返回列。
await Database
.insert(array)
.into('products')
.returning('id')
推荐阅读
- python - 使用 python + selenium + webdriver 从文本文件中搜索 ID 并将 URL 写入文件
- gstreamer - 带有参差不齐的数据链接的 Gstreamer 文件接收器时间戳
- java - 关闭txt文件并删除
- java - 将 csv 数据作为 zipentry 对象移动到 zip 存档 - 构造函数 ZipEntry(Path) 未定义
- corda - Corda 中的 Vault 查询
- r - 计算 R 中数据帧中具有条件的条目数(通用)
- python - 按类的属性分组和计数
- angular - 如何检查主题是否不为空?
- tinymce - 在 TinyMCE 中使用 paste_as_text 后为文本添加样式
- python - 如何解码定义为字符串的十六进制字节?