mysql - 为什么更新查询在此函数中不起作用?
问题描述
我想在我的代码中切换公司的激活状态。所以首先我使用activation_status,切换它,然后触发更新查询。但它表明 con.query1() 不是一个函数。
我检查了所有可能的错误仍然无法找到它。
我在许多网站上搜索,但它说它会拼写错误。
var val;
app.post("/edit/company", (req, res) => {
let comid = req.body.comid;
let sql = "SELECT is_active from tblcompany where cid='" + comid + "'";
let query = con.query(sql, (err, result) => {
if (err) throw err;
val = result[0].is_active;
if (val == "1") val = 0;
else val = 1;
console.log("Value of Activation Status: " + val);
});
console.log("Value of activation status:" + val);
console.log("Value of Company" + comid);
let sql1 =
"UPDATE tblcompany SET is_active=" + val + " where cid=" + comid + "";
let query1 = con.query1(sql1, (err, result) => {
if (err) throw err;
console.log(result);
// res.send(JSON.stringify(result));
});
});
解决方案
您可以避免仅使用 SQL 进行一些检查
UPDATE tblcompany SET is_active = case when is_active = 1 then 0 else 1 end
WHERE ......
你应该使用 con.query() ..not query1
推荐阅读
- ios - 修改 endcap .round 样式,使其更明显圆形,与此处显示的示例图像不同
- url - Angular 2:多个组件的一条路径?
- python - 预期 input_1 的形状为 (224, 224, 3) 但得到的数组的形状为 (400, 401, 3)
- c# - 在使用 C# .NET Core 3 中使用 SSL 证书连接到 MySQL 数据库
- javascript - 如何将 observable 应用于复选框以验证它是否被选中,从而能够重新加载我的应用程序页面?
- javascript - 如何在 JavaScript 中过滤嵌套的嵌套对象?
- encoding - 网站输出奇怪的字符编码
- tcp - 无法从 Coturn 服务器获取 ICE TCP 中继候选
- coldfusion - Firebird Jaybird 2.2.10 / ColdFusion 2018 - 字符串长度错误
- odata - 从 Microsoft Graph API 消息中获取对话