| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- 'use strict'
- const mssql = require('./')
- const sqlConfig = {
- password: 'P@ssw0rd',
- database: 'master',
- // connectionTimeout: undefined,
- // requestTimeout: 30000,
- stream: false,
- options: {
- encrypt: true,
- readOnlyIntent: true
- },
- port: 1433,
- user: 'sa',
- server: 'localhost',
- pool: {
- // acquireTimeoutMillis: 1000,
- // propagateCreateError: true,
- },
- }
- let pool
- function createPool() {
- return new mssql.ConnectionPool(sqlConfig)
- }
- const poolRequest = createPool()
- function connect () {
- console.log('trying to connect to server')
- // const poolRequest = createPool()
- mssql.on('error', (e) => {
- console.log('error event fired')
- console.error(e)
- })
- return poolRequest.connect(sqlConfig).then((connection) => {
- // setTimeout(connection.close.bind(connection), 2000)
- console.log('connection established')
- console.log(connection)
- connection.on('error', (e) => {
- console.log('on error')
- console.error(e)
- })
- pool = connection
- })
- }
- function runQuery (result) {
- if (result) {
- console.log('*** RESULT ***')
- console.log(result.recordset)
- console.log('*** RESULT ***')
- }
- const request = pool.request();
- return new Promise((resolve) => {
- setTimeout(resolve, 10000)
- }).then(() => request.query('SELECT 1').catch(e => {
- console.log('query error')
- throw e
- })).then(runQuery)
- }
- connect()
- .then(() => {
- return runQuery()
- })
- .catch((e) => {
- console.log('connection error')
- console.error(e)
- console.log(pool)
- return runQuery()
- })
- .then(() => {
- return pool && pool.close()
- }).catch(() => {
- console.log(pool)
- })
|