node.js中连接sql server

2020年4月12日

一、系统环境

  • Node.js 13

  • Microsoft SQL Server 2014

二、安装和配置

1.安装sql server

安装sql server之后,最好启用远程连接

2. 安装mssql的node客户端

使用npm安装Microsoft SQL Server client for Node.js

npm install mssql

3. 使用

(1)使用连接字符串连接,如下:


const sql = require('mssql')

async () => {

    try {

        // make sure that any items are correctly URL encoded in the connection string

        await sql.connect('mssql://username:password@localhost/database')

        const result = await sql.query`select * from mytable where id = ${value}`

        console.dir(result)

    } catch (err) {

        // ... error checks

    }

}

(2)使用config对象。

需要注意如果不是在Windows Azure上使用,一定要将encrypt属性设置为false。否则会报ESOCKET相关的错误。

Esocket错误.png

const config = {

    user: '用户名这里',

    password: '密码这里',

    server: 'DESKTOP-3BA', // You can use 'localhost\\instance' to connect to named instance

    database: 'MyGIS是数据库名称',

    options: {

        trustedConnection: true

    },

    pool: {

        max: 10,

        min: 0,

        idleTimeoutMillis: 30000

    },

    options: {

        encrypt: false // Windows Azure时设置为true,其他设置为false

    }

}

const sql = require('mssql')

(async function () {

    try {

        let pool = await sql.connect(config)

        let result1 = await pool.request()

            .input('input_parameter', sql.Int, value)

            .query('select * from mytable where id = @input_parameter')

        console.dir(result1)

        // Stored procedure

        let result2 = await pool.request()

            .input('input_parameter', sql.Int, value)

            .output('output_parameter', sql.VarChar(50))

            .execute('procedure_name')

        console.dir(result2)

    } catch (err) {

        // ... error checks

    }

})()

sql.on('error', err => {

    // ... error handler

})

你可能感兴趣的:(node.js中连接sql server)