首页 > 解决方案 > 找不到模块“mssql/msnodesqlv8”的声明

问题描述

API使用typescriptin开发node.js

导入以下包以使用sql server database

import sql from "mssql/msnodesqlv8";

但这给了我以下错误

找不到模块“mssql/msnodesqlv8”的声明隐含地具有任何类型。如果存在,或者添加一个包含声明模块“mssql”的新声明 (.d.ts) 文件

我几乎在每个路由文件中都有这个声明,并且由于这个声明,每个文件都面临着这个丑陋的红色,显示我的错误。

我的项目中安装了以下软件包

"msnodesqlv8": "^0.6.6",
"mssql": "^4.1.0",
"@types/mssql": "^4.0.7",

有什么建议可以摆脱这种情况吗?

在此处输入图像描述

标签: sql-servernode.js

解决方案


我通过运行解决了这个问题: npm install mssql & npm install msnodesqlv8

我的 package.json 看起来像这样:

https://i.stack.imgur.com/7wMTk.png

连接到 SQL Server 并运行查询:

  const connection = new sql.ConnectionPool({
    server: *ServerName* ,
    driver: 'msnodesqlv8',
    options: {
      trustedConnection: true
    }})

  connection.connect().then(()=> {
    connection.query(`*Query*`,(err,result)=>{
      if(err){
        res.send(err);
      }
      else{
        res.json(result)
      }
    })
})

推荐阅读