首页 > 解决方案 > 如何使用 mssql 节点模块执行更新并正确关闭连接

问题描述

 const sql = require('mssql');

 var dbConfig = {
 server: "localhost",
 database: "veiculos",
 user: "guest2",
 password: "mypassword",
 port: 1433,
 debug: true,
 encrypt: true  
 };

    sql.connect(dbConfig);
    const request = new sql.Request()

  request.query('update producao.carros set gostar += 1 where  carroid = 37', (err, result) => {


      console.log(result)


  })

当我运行此代码时,我得到

“不推荐使用繁琐的默认值options.encrypt将从更改false为。如果要保留当前行为,true请显式传递。node_modules/mssql/lib/tedious.js:230:23”false

并且记录没有更新。

当我尝试运行两次时,我得到了这个:

if (globalConnection) throw new Error('全局连接已经存在。先调用 sql.close()。')

错误:全局连接已存在。首先调用 sql.close()。

并且记录未更新,异常停止服务器。

最后一个错误很清楚,但是为什么我的记录没有更新?

标签: node.jssql-server

解决方案


更新后关闭 sql 连接使用 sql.close() 这将关闭全局连接并使其可用于第二个请求


推荐阅读