node.js - node js SQL插入查询,构造函数/ JSON文本作为值参数
问题描述
第一个真正的应用程序,我一直试图在 SQL 中插入一个新行。
//This is the API endpoint
Sponsor.create = (newSponsor, result)=> {
var sqlStmt = 'insert into sponsors (SponsorName, SponsorState, SponsorDesc, pnfpExperience, Status) values ?'
sql.query(sqlStmt, [newSponsor], (err, res)=> {
if(err) {
console.log(" error: ", err);
result(null, err);
}
else{
console.log(res);
result(null, res);
}
});
};
request.body 返回 JSON 文本,但不返回可在查询中使用的值数组。我不断收到 COUNT 错误或语法错误。我试过 JSON.parse 但我得到一个未定义的错误。我知道必须有一种简单的方法将 JSON 文本转换为正确的格式,但我不知道我缺少什么。“findAll”和“findById”路由工作,我可以插入静态值。我也试过带和不带括号的“newSponsor”。我会及时完善连接方法,但我只是想了解为什么这不起作用。任何帮助是极大的赞赏。
// Controller.js for Reference
exports.create = function(req, res) {
const new_sponsor = new Sponsor(req.body);
//handles null error
if(req.body.constructor === Object && Object.keys(req.body).length === 0){
res.status(400).send({ error:true, message: 'Please provide all required field' });
}else{
Sponsor.create(new_sponsor, function(err, sponsor) {
if (err)
res.send(err);
res.json({error:false,message:"Sponsor added successfully!",data:sponsor});
});
}
};
解决方案
推荐阅读
- javascript - 使用 element.all 遍历表时量角器抛出 StaleElementReferenceError
- webpack - 如何创建没有 PWA 功能的 CRA 项目?
- php - 如何将单个逗号数组值转换为多个键值
- alibaba-cloud - 阿里云 DNS EDNSTCP
- reactjs - 在 antd design react 中使用带有 Form FormItem 的 React-Quill
- python - 如何将 3 维数组保存到 csv 文件中?
- sql-server - 如果行不存在如何输出行
- mysql - 从 --alldatabase.sql.gz 提取单个数据库
- r - "UseMethod("xml_add_child") 中的错误" test_dir 不起作用
- python - python - 如何在python中使用numpy和matplotlib绘制二维数据的最大和最小特征向量?