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

使用mssql包连接Node.js与SQL Server时遇undefined值错误求助

Node.js使用mssql连接SQL Server报错:Cannot read properties of undefined (reading 'port')

错误信息

PS F:\Visual Studio Code\NodeSQLServer> node dboperations.js
TypeError: Cannot read properties of undefined (reading 'port')
    at new ConnectionPool (F:\Visual Studio Code\NodeSQLServer\node_modules\mssql\lib\base\connection-pool.js:60:36)
    at new ConnectionPool (F:\Visual Studio Code\NodeSQLServer\node_modules\mssql\lib\tedious\connection-pool.js:10:1)
    at Object.connect (F:\Visual Studio Code\NodeSQLServer\node_modules\mssql\lib\global-connection.js:18:24)
    at getResult (F:\Visual Studio Code\NodeSQLServer\dboperations.js:6:36)
    at Object.<anonymous> (F:\Visual Studio Code\NodeSQLServer\dboperations.js:16:1)
    at Module._compile (node:internal/modules/cjs/loader:1254:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
    at Module.load (node:internal/modules/cjs/loader:1117:32)
    at Module._load (node:internal/modules/cjs/loader:958:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
undefined

错误原因

  1. 导入语句解构赋值错误:
    dbconfig.js直接导出了config对象,但dboperations.js使用let { config } = require('./dbconfig');尝试解构导出对象的config属性——实际导出的就是config本身,没有嵌套的config属性,导致变量config最终为undefined。当mssql的connect方法接收undefined时,内部读取port属性就会触发报错。

  2. 身份验证配置冲突:
    配置中同时设置了trustedConnection: true(Windows身份验证)和user/password(SQL身份验证),两者互斥,会导致连接逻辑混乱。

解决方法

  1. 修正导入语句
    将dboperations.js中的导入代码从解构赋值改为直接导入:

    // 原错误代码
    // let { config } = require('./dbconfig');
    
    // 修改后
    const config = require('./dbconfig');
    
  2. 统一身份验证方式
    根据实际使用的验证方式调整配置:

    • 若用Windows身份验证:删除user和password字段,保留trustedConnection: true;
    • 若用SQL身份验证:将trustedConnection改为false,保留user和password字段。
  3. 验证基础配置

    • 确认SQL Server的SQLEXPRESS实例已启用TCP/IP协议,端口1433处于开放状态;
    • 确保数据库Rane存在,用户Tableau拥有访问config_table_master表的权限。

内容的提问来源于stack exchange,提问作者Mr. Basu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 06:30:56