gpt4 book ai didi

mysql - 使用 Knex.js 插入多行

转载 作者:搜寻专家 更新时间:2023-11-01 00:41:27 32 4
gpt4 key购买 nike

我正在尝试使用 Knex.js 构建多行插入查询

我的帖子请求包含一个变量,其格式如下:[{addon_name:'sugar'},{addon_name:'milk'}]

我的数据库表只有一列,即 addon_name

我的 Node 应用程序中的 knex 查询如下所示

knex(`<table_name>`).insert(req.body.`<param_name>`))

预期操作

insert into `<tablename>`(`addon_name`) values (sugar), (milk);

但是代码不起作用。有什么意见吗?

错误详情

{ [Error: insert into `table_name` (`0`, `1`, `10`, `11`, `12`, `13`, `14`, `15`, `16`, `17`, `18`, `19`, `2`, `20`, `21`, `22`, `23`, `24`, `25`, `26`, `27`, `28`, `29`, `3`, `30`, `31`, `32`, `33`, `34`, `35`, `36`, `37`, `38`, `39`, `4`, `40`, `41`, `5`, `6`, `7`, `8`, `9`) values ('[', '{', 'm', 'e', ':', '\'', 's', 'u', 'g', 'a', 'r', '\'', 'a', '}', ',', '{', 'a', 'd', 'd', 'o', 'n', '_', 'n', 'd', 'a', 'm', 'e', ':', '\'', 'm', 'i', 'l', 'k', '\'', 'd', '}', ']', 'o', 'n', '_', 'n', 'a') - ER_BAD_FIELD_ERROR: Unknown column '0' in 'field list']
code: 'ER_BAD_FIELD_ERROR',
errno: 1054,
sqlState: '42S22',
index: 0 }

最佳答案

虽然这是一个老问题,但我在这里回答只是为了那些偶然发现这个问题的人。

Knex 现在 supports multi-row inserts像这样:

knex('coords').insert([{x: 20}, {y: 30},  {x: 10, y: 20}])

输出:

insert into `coords` (`x`, `y`) values (20, DEFAULT), (DEFAULT, 30), (10, 20)

还有 batchInsert utility将插入包装在事务中的一批行。

关于mysql - 使用 Knex.js 插入多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32954902/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com