我正在尝试使用MYSQL进行批量插入。
这是我的代码:
const values = workouts.map((workout) => [ nanoid(), programEnrollmentId, workout.workout_id, userId, ]); await RDS.query( ` INSERT INTO user_workouts (nano_id, program_enrolment_id, workout_id, user_id) VALUES ? `, [values] );
出于某种原因,我遇到了这个错误: ERROR MESSAGE: Named parameter name is empty
ERROR MESSAGE: Named parameter name is empty
当我在值中添加额外的方括号时,就像这样 [[values]] 我得到这个错误: ERROR MESSAGE: Unexpected key '0' found in params.parameterSets[0][0]
[[values]]
ERROR MESSAGE: Unexpected key '0' found in params.parameterSets[0][0]
根据包装文件,指出该文件 https://github.com/mysqljs/mysql#performing-queries
const values = workouts.map((workout) => [ nanoid(), programEnrollmentId, workout.workout_id, userId, ]); await RDS.query( ` INSERT INTO user_workouts (nano_id, program_enrolment_id, workout_id, user_id) VALUES ? `, values );
您不需要括号,因为变量值已经是数组的数组