function addEmployee() { inquirer .prompt([ { name: "firstname", type: "input", message: "Enter their first name ", }, { name: "lastname", type: "input", message: "Enter their last name ", }, { name: "role", type: "list", message: "What is their role? ", choices: selectRole(), }, { name: "choice", type: "rawlist", message: "Whats their managers name?", choices: selectManager(), }, ]) .then(function (val) { var roleId = selectRole().indexOf(val.role) + 1; var managerId = selectManager().indexOf(val.choice) + 1; db.query( "INSERT INTO employee (first_name, last_name, role_id, manager_id) values ('?', '?', ?, ?)?", { first_name: val.firstName, last_name: val.lastName, manager_id: managerId, role_id: roleId, }, function (err) { if (err) throw err; console.table(val); startPrompt(); } ); }); }No se puede hacer funcionar INSERT en la declaración de consulta de los empleados. Estoy usando el paquete mysql2 npm para interactuar con una base de datos Mysql en Node JS. Intentar pasar las respuestas de las preguntas del investigador a la declaración preparada para insertarla en la tabla de empleados. ¿Cómo paso variables para la declaración preparada?
Pase como matriz, verifique que el orden de los marcadores de posición coincida con el orden de la matriz y el caso importa en las variables.
... db.query(` INSERT INTO employee ( first_name, last_name, role_id, manager_id ) VALUES (?, ?, ?, ?) `, [val.firstname, val.lastname, roleId, managerId]); ...