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

Node.js连接MS SQL Server报错:ODBC数据源未找到且无默认驱动

Node.js连接MS SQL Server报错:[Microsoft][ODBC Driver Manager] 未找到数据源名称且未指定默认驱动

配置代码(db.js)

const sql = require('mssql/msnodesqlv8');

const config = {
    server: 'EUDIN-F3-OFFSHO\\SQLEXPRESS',
    database: 'TodoDb',
    driver: 'msnodesqlv8',
    options: {
        trustedConnection: true,
        trustServerCertificate: true
    }
}

const pool = new sql.ConnectionPool(config)

module.exports = pool;

获取待办事项模型代码

const pool = require('../_database/db');

const getTodosModel = async () => {

    const query = `select * from todo_list`;

    try {
        await pool.connect()
        const response = await pool.request().query(query)
        console.log('success', response)
        return response;
    } catch (error) {
        console.log('getTodosModel says: ', error.message)
    }
}

module.exports = getTodosModel;

报错内容

Error: getTodosModel says: [Microsoft][ODBC Driver Manager] 未找到数据源名称且未指定默认驱动

已尝试的解决方案

  • 在ODBC数据源管理器的用户DSN和系统DSN中添加数据源,但问题仍未解决

可行解决步骤

  1. 安装匹配的ODBC驱动
    msnodesqlv8依赖系统级的SQL Server ODBC驱动,需安装与你的SQL Server版本兼容的驱动(如SQL Server 2017及以上版本推荐安装ODBC Driver 17或18 for SQL Server)。

  2. 修正驱动名称配置
    配置中的driver字段需与ODBC管理器中显示的驱动名称完全一致。例如安装ODBC Driver 18 for SQL Server后,应将driver值改为ODBC Driver 18 for SQL Server,而非msnodesqlv8(msnodesqlv8是npm包,底层依赖系统驱动)。调整后的配置示例:

    const config = {
        server: 'EUDIN-F3-OFFSHO\\SQLEXPRESS',
        database: 'TodoDb',
        driver: 'ODBC Driver 18 for SQL Server',
        options: {
            trustedConnection: true,
            trustServerCertificate: true
        }
    }
    
  3. 重新安装依赖包
    确保msnodesqlv8与Node.js版本兼容,执行以下命令重装依赖:

    npm uninstall mssql msnodesqlv8 && npm install mssql msnodesqlv8
    
  4. 验证DSN连接有效性
    在ODBC数据源管理器中,测试已添加的DSN能否成功连接到目标SQL Server,确认服务器名称、数据库名称及Windows认证配置无误。

内容的提问来源于stack exchange,提问作者Eudinson Uy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 17:55:10