node js 在 sql 中将所有值保存为 0
node js saving all values as 0 in sql
我正在使用 express 和 mysql 在 nodejs 上制作 API。在 POST 方法中我没有收到任何错误,但在 mysql 上将所有值存储为 0,如下所示:
1
0
0.00
0000-00-00
0
(1为ID自增)
要像这样使用 POSTMAN 测试 post 方法:
{
"Id" : null,
"Concepto" : "Desde POSTMAN",
"Monto" : 10,
"Fecha" : "1988-05-05",
"Tipo" : "Ingreso"
}
这是函数
router.post('/', (req, res) => {
const { id,concepto,monto,fecha,tipo } = req.body;
mysqlConnection.query("INSERT INTO operaciones (Id, Concepto, Monto, fecha, Tipo) VALUES (?)", [req.body],(err, rows, fields) => {
if (!err) {
res.json({Status: "Operacion Saved"});
} else {
console.log(err);
}
});
});
任何建议,谢谢
没有看到您的 table 定义,我假设数据库引擎默认为您在查询传递空值时获得的 0
值。
您应该为要传递给查询的每个输入使用 ?
占位符。
此外,实际上并没有使用解构值。
请尝试以下代码:
router.post('/', (req, res) => {
const { id, Concepto, Monto, Fecha, Tipo } = req.body;
mysqlConnection.query("INSERT INTO operaciones (Concepto, Monto, Fecha, Tipo) VALUES (?, ?, ?, ?);", [Concepto, Monto, Fecha, Tipo], (err, results, fields) => {
if (!err) {
res.json({ Status: "Operacion Saved" });
} else {
console.log(err);
}
});
});
注意 id
未在您提到的查询中使用,它被设置为 auto-increment。
我正在使用 express 和 mysql 在 nodejs 上制作 API。在 POST 方法中我没有收到任何错误,但在 mysql 上将所有值存储为 0,如下所示:
1
0
0.00
0000-00-00
0
(1为ID自增)
要像这样使用 POSTMAN 测试 post 方法:
{
"Id" : null,
"Concepto" : "Desde POSTMAN",
"Monto" : 10,
"Fecha" : "1988-05-05",
"Tipo" : "Ingreso"
}
这是函数
router.post('/', (req, res) => {
const { id,concepto,monto,fecha,tipo } = req.body;
mysqlConnection.query("INSERT INTO operaciones (Id, Concepto, Monto, fecha, Tipo) VALUES (?)", [req.body],(err, rows, fields) => {
if (!err) {
res.json({Status: "Operacion Saved"});
} else {
console.log(err);
}
});
});
任何建议,谢谢
没有看到您的 table 定义,我假设数据库引擎默认为您在查询传递空值时获得的 0
值。
您应该为要传递给查询的每个输入使用 ?
占位符。
此外,实际上并没有使用解构值。
请尝试以下代码:
router.post('/', (req, res) => {
const { id, Concepto, Monto, Fecha, Tipo } = req.body;
mysqlConnection.query("INSERT INTO operaciones (Concepto, Monto, Fecha, Tipo) VALUES (?, ?, ?, ?);", [Concepto, Monto, Fecha, Tipo], (err, results, fields) => {
if (!err) {
res.json({ Status: "Operacion Saved" });
} else {
console.log(err);
}
});
});
注意 id
未在您提到的查询中使用,它被设置为 auto-increment。