You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NodeJS连接SQL Server成功但DELETE查询无法执行问题求助

问题分析与修复

核心错误点:

  • DELETE语法错误:SQL的DELETE语句不需要加*,带*属于语法错误,正确写法是DELETE FROM std_list WHERE name='meshkat'。
  • query方法调用错误:代码里用con.query=(sqlquery, function(...))是赋值操作,而非调用方法,导致查询根本没执行,程序卡在连接成功状态。
  • 连接配置字段错误:mysql模块的密码配置项是password,不是pass,虽当前显示连接成功,但该错误可能引发后续问题,建议修正。

修复后的代码:

var mysql = require('mysql');
var dbconnect = {
    host: 'localhost',
    user: 'root',
    password: '', // 修正为password字段
    database: 'school'
}

var con = mysql.createConnection(dbconnect);
con.connect(function (error) {
    if (error) {
        console.log('连接失败');
    } else {
        console.log('连接成功');
        deletedata(con);
    }
});

function deletedata(con) {
    // 修正DELETE语句,移除多余的*
    let sqlquery = "DELETE FROM `std_list` WHERE name='meshkat'";
    // 修正query调用方式,去掉错误的赋值运算符=
    con.query(sqlquery, function (error) {
        if (error) {
            console.log("数据删除失败");
            console.error(error); // 打印错误详情,方便排查
        } else {
            console.log('数据删除成功');
        }
    });
}

额外提示:

  • 在错误回调中打印error对象,能获取具体报错信息,更快定位问题。
  • 若实际操作的是SQL Server,应使用mssql模块而非mysql模块,当前代码仅适用于MySQL数据库,注意区分两者。

内容的提问来源于stack exchange,提问作者Meshkat Rangon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 00:35:31