Tedious: рдиреЛрдб рдЬреЗрдПрд╕ рд╡реЗрдм рдРрдк рд╕реЗ MSSql рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рдореЗрдВ ESOCKET рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐

рдХреЛ рдирд┐рд░реНрдорд┐рдд 25 рд╕рд┐рддре░ 2018  ┬╖  19рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: tediousjs/tedious

рд╣рд╛рдп рдЯреАрдо,
рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдЬрдм рд╕реЗрд╡рд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЯреНрд░реИрдлрд╝рд┐рдХ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдЕрдкрдиреЗ рд╡реЗрдм рдРрдк рд╕реЗ рдПрдордПрд╕рдПрд╕рдХреНрдпреВрдПрд▓ рдХреЗ рд▓рд┐рдП рдЖрдВрддрд░рд╛рдпрд┐рдХ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рд╕рдорд╕реНрдпрд╛рдПрдВ рдЕрдХреНрд╕рд░ рдорд┐рд▓ рд░рд╣реА рд╣реИрдВред
рдХреНтАНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдЕрдВрддрд┐рдо рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЧрдИ рд╣реИред

рддреНрд░реБрдЯрд┐ :
_{рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐: < . рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓>:1433 - рдХрдиреЗрдХреНрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрд╛ (рдЕрдиреБрдХреНрд░рдо)
Connection.tedious.once.err рдкрд░ (D:\home\site\wwwroot\node_modules\mssql\lib\tedious.js:216:17)
Connection.g рдкрд░ (events.js:291:16)
рдПрдорд┐рдЯрд╡рди рдкрд░ (events.js:96:13)
Connect.emit рдкрд░ (events.js:188:7)
Connection.socketError рдкрд░ (рдбреА: \ рд╣реЛрдо \ рд╕рд╛рдЗрдЯ \ wwwroot \ node_modules \ рдердХрд╛рдК \ lib \ рдХрдиреЗрдХреНрд╢рдиред рдЬреЗрдПрд╕: 699:14)
рдбреА:\рд╣реЛрдо\рд╕рд╛рдЗрдЯ\wwwroot\рдиреЛрдб_рдореЙрдбреНрдпреВрд▓\рдердХрд╛рдК\lib\connection.js:590:25 рдкрд░
SequentialConnectionStrategy.connect рдкрд░ (D:\home\site\wwwroot\node_modules\tedious\lib\connector.js:153:9)
Socket.onError рдкрд░ (рдбреА: \ рд╣реЛрдо \ рд╕рд╛рдЗрдЯ \ wwwroot \ node_modules \ рдердХрд╛рдК \ lib \ Connector.js: 169:16)
рдПрдорд┐рдЯрд╡рди рдкрд░ (events.js:96:13)
Socket.emit рдкрд░ (events.js:188:7)
рдХреЛрдб: 'рдИрд╕реЛрдХреЗрдЯ',
рдореВрд▓ рддреНрд░реБрдЯрд┐:_

рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рд╡рд░рдг:
"рдердХрд╛рдК": "2.0.1",
"mssql": "^4.0.4",

рдзрдиреНрдпрд╡рд╛рдж,
рдкреНрд░рд╡реАрдгред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

Microsoft рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирдореВрдиреЗ рд╕реЗ рдХреЙрдкреА рдХрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА: https://www.microsoft.com/en-us/sql-server/developer-get-started/node/windows/step/2.html

рдЕрдВрдд рдореЗрдВ, рдореИрдВрдиреЗ "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореИрдиреЗрдЬрд░" -> "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди" -> "рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдХреЗ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛"->"рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА"

C:\Users\zpc\Desktop\SqlServerSample>node connect.js { ConnectionError: Failed to connect to localhost:1433 - Could not connect (sequence) at ConnectionError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\errors.js:13:12) at Connection.socketError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1183:28) at Connector.execute (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1022:21) at SequentialConnectionStrategy.connect (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:69:7) at Socket.onError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:84:12) at Socket.emit (events.js:189:13) at emitErrorNT (internal/streams/destroy.js:82:8) at emitErrorAndCloseNT (internal/streams/destroy.js:50:3) at process._tickCallback (internal/process/next_tick.js:63:19) message: 'Failed to connect to localhost:1433 - Could not connect (sequence)', code: 'ESOCKET' }

рд╕рднреА 19 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЕрд░реЗ @ Praveen335

рдореБрдЭреЗ рдпрд╣ рдЬрд╛рдирдХрд░ рдЕрдлрд╝рд╕реЛрд╕ рд╣реБрдЖ рдХрд┐ tedious рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЖрдкрдХреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдЬрд╛рдирдХрд╛рд░реА рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрд╣ рдЬрд╛рдирдирд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛:

  • рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ tedious рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
  • рдпрд╣ рддреНрд░реБрдЯрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдм рд╣реЛрддреА рд╣реИ? рд╕реНрдЯреИрдХрдЯреНрд░реЗрд╕ рд╕реЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛрдиреЗ рдкрд░ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЕрдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрдиреЗрдХреНрдЯ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ SQLServer рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ (рд╢рд╛рдпрдж рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдЙрдЪреНрдЪ рднрд╛рд░ рдХреЗ рдХрд╛рд░рдг) рдФрд░ tedious рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж! тАНтЩВя╕П

рд╣рд╛рдп @arthurschreiber ,
рдЖрдкрдХреА рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВрдиреЗ рдЕрдкрдиреА рдкреЛрд╕реНрдЯ рдореЗрдВ рдкрд╣рд▓реЗ рд╣реА рдердХрд╛рдК рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рджрд┐рдпрд╛ рд╣реИред

рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рд╡рд░рдг:
"рдердХрд╛рдК": "2.0.1",
"mssql": "^4.0.4",

рд╣рдордиреЗ SQL рд╕рд░реНрд╡рд░ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдХреЗ рд▓рд┐рдП рд╕рдХреНрд░рд┐рдп рдХрд╛рд░реНрдп рдереНрд░реЗрдб рдХреЛ Microsoft рд╕рдорд░реНрдерди рддрдХ рдмрдврд╝рд╛ рдХрд░ рджреЗрдЦрд╛ рдерд╛ред рдЙрдиреНрд╣реЛрдВрдиреЗ SQLServer рдЕрдВрдд рд╕реЗ рд╕рднреА рдЕрдЪреНрдЫреЗ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ред рд╡рд░реНрдХ рдереНрд░реЗрдб рдкреНрд░рддрд┐рд╢рдд рднреА рдХрдоред рдореИрдВрдиреЗ рдХрд╕реНрдЯрдо рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдХрд┐рд╕реНрдордд рдирд╣реАрдВред рд╕реЙрдХреЗрдЯ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдмрд╛рдж рдХреЗ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рдЧрд╛рддрд╛рд░ рдлреЗрдВрдХ рд░рд╣рд╛ рд╣реИред рдХреЛрдИ рд╕реБрдЭрд╛рд╡ рдпрд╛ рд╕рд┐рдлрд╛рд░рд┐рд╢ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдорд╛рд░реА рдорджрдж рдХрд░реЗрдЧреАред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдиреЗрдХреНрд╢рди рдкреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдзрдиреНрдпрд╡рд╛рдж,
рдкреНрд░рд╡реАрдгред

рдпрд╣рд╛рдБ рд╡рд╣реА, рд╡рд╣ рдЕрдЪрд╛рдирдХ рдЙрд╕реА рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рдкрд╣реБрдБрдЪ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдЯрдХ рдЬрд╛рддрд╛ рд╣реИ...

рд╣рдо рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рднреА рд╡рд╣реА рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред

рд╣рдо рд╕реЗрд╡рд╛ рд╢реБрд░реВ рд╣реЛрдиреЗ рдкрд░ рдПрдХ рдХрдиреЗрдХреНрд╢рдирдкреВрд▓ рдХрдиреЗрдХреНрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
new App.SQL.ConnectionPool

рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдХреНрд╖рдг рдореЗрдВ рдПрдХ рдЕрдиреБрд░реЛрдз рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ:

рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐: рдбреЗрдЯрд╛рдмреЗрд╕ рдПрд╕реЗрд░рд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓: 1433 - рдХрдиреЗрдХреНрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрд╛ (рдЕрдиреБрдХреНрд░рдо)

рд╕реЗрд╡рд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреБрдирд░рд╛рд░рдВрдн рд╣реЛрддреА рд╣реИ рд▓реЗрдХрд┐рди рдЗрди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд▓рдЧрднрдЧ 20 рдорд┐рдирдЯ рддрдХ рдлреЗрдВрдХрддреА рд░рд╣рддреА рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж рд╕реЗрд╡рд╛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ рдФрд░ рдпрд╣ рдлрд┐рд░ рд╕реЗ рдЬреБрдбрд╝ рд╕рдХрддреА рд╣реИред

рд╣рдо рдЗрд╕реЗ рдЗрд╕ рд╕рд░реНрд╡рд░ рдкрд░ рдХрдИ рдиреЛрдб рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рд╡реЗ рдПрдХ рд╕рд╛рде рдиреАрдЪреЗ рдирд╣реАрдВ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ (рдХрднреА-рдХрднреА рд╡реЗ рдХрд░рддреЗ рд╣реИрдВ), рдЬреЛ рдереЛрдбрд╝реЗ рдЕрдЬреАрдм рд╣реИред рд╣рдорд╛рд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг NodeJS рдРрдк рдореЗрдВ рд╣реИ рди рдХрд┐ mssql DB рдореЗрдВред

рд╣рдо рдЗрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:

mssql: 4.3.0 (рдирд╡реАрдирддрдо)
рдЗрд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдердХрд╛рдК рд╕рдВрд╕реНрдХрд░рдг 2.7.1 рд╣реИред

рдирдорд╕реНрддреЗред рд╣рдо рднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдпреЗ рд╣рдорд╛рд░реЗ рд╕рдВрд╕реНрдХрд░рдг рд╣реИрдВ:
mssql: 4.3.0
рдЬреЛ рдердХрд╛рдК рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ: 2.7.1

ConnectionError: Failed to connect to xxxxxx.database.windows.net:1433 in 15000ms
at Connection.tedious.once.err (...node_modules\mssql\lib\tedious.js:239:17)
at Object.onceWrapper (events.js:315:30)
at emitOne (events.js:116:13)
at Connection.emit (events.js:211:7)
at Connection.connectTimeout (...node_modules\mssql\node_modules\tedious\lib\connection.js:944:12)
at Timeout._onTimeout (...node_modules\mssql\node_modules\tedious\lib\connection.js:913:16)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)

MSSQL рд╕рд░реНрд╡рд░ рдХреЗ рдЕрдкрдиреЗ рд╕рдВрд╕реНрдХрд░рдг рд▓рд┐рдЦреЗрдВред рдЕрдм, MSSQL2017 рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рд▓рд┐рдП SQLNCLI11 рдХреЛ MSOLEDBSQL рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
https://blogs.msdn.microsoft.com/sqlnativeclient/2018/03/30/released-microsoft-ole-db-driver-for-sql-server/

Microsoft рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирдореВрдиреЗ рд╕реЗ рдХреЙрдкреА рдХрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА: https://www.microsoft.com/en-us/sql-server/developer-get-started/node/windows/step/2.html

рдЕрдВрдд рдореЗрдВ, рдореИрдВрдиреЗ "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореИрдиреЗрдЬрд░" -> "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди" -> "рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдХреЗ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛"->"рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА"

C:\Users\zpc\Desktop\SqlServerSample>node connect.js { ConnectionError: Failed to connect to localhost:1433 - Could not connect (sequence) at ConnectionError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\errors.js:13:12) at Connection.socketError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1183:28) at Connector.execute (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1022:21) at SequentialConnectionStrategy.connect (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:69:7) at Socket.onError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:84:12) at Socket.emit (events.js:189:13) at emitErrorNT (internal/streams/destroy.js:82:8) at emitErrorAndCloseNT (internal/streams/destroy.js:50:3) at process._tickCallback (internal/process/next_tick.js:63:19) message: 'Failed to connect to localhost:1433 - Could not connect (sequence)', code: 'ESOCKET' }

Microsoft рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирдореВрдиреЗ рд╕реЗ рдХреЙрдкреА рдХрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА: https://www.microsoft.com/en-us/sql-server/developer-get-started/node/windows/step/2.html

рдЕрдВрдд рдореЗрдВ, рдореИрдВрдиреЗ "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореИрдиреЗрдЬрд░" -> "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди" -> "рдкреНрд░реЛрдЯреЛрдХреЙрд▓" -> "рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА" рдореЗрдВ рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдХреЗ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ред

C:\Users\zpc\Desktop\SqlServerSample>node connect.js { ConnectionError: Failed to connect to localhost:1433 - Could not connect (sequence) at ConnectionError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\errors.js:13:12) at Connection.socketError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1183:28) at Connector.execute (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1022:21) at SequentialConnectionStrategy.connect (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:69:7) at Socket.onError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:84:12) at Socket.emit (events.js:189:13) at emitErrorNT (internal/streams/destroy.js:82:8) at emitErrorAndCloseNT (internal/streams/destroy.js:50:3) at process._tickCallback (internal/process/next_tick.js:63:19) message: 'Failed to connect to localhost:1433 - Could not connect (sequence)', code: 'ESOCKET' }

рдЖрдкрдХреЛ рдзрдиреНрдпрд╡рд╛рдж! рдореБрдЭреЗ рдпрд╣ рд╕рдЯреАрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рдереА;)

рдЪреВрдВрдХрд┐ рд╣рдо рдЕрднреА рднреА рдЕрдкрдиреА рд▓рдЧрднрдЧ рд╕рднреА рдиреЛрдбрдЬ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдкрд░реАрдХреНрд╖рдг рдХрд┐рдПред
рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА рдлрд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдЙрдкрд░реЛрдХреНрдд рдЯрд┐рдкреНрдкрдгреА рд╣рдорд╛рд░реЗ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдХреНрд╖рдо рдереАред

рд╣рдордиреЗ рдПрдХ рдирдИ рдиреЛрдбрдЬ рд╕реЗрд╡рд╛ рдмрдирд╛рдИ рдЬреЛ рдмрд┐рд▓реНрдХреБрд▓ рдХреБрдЫ рдирд╣реАрдВ рдХрд░ рд░рд╣реА рд╣реИред рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реЗрд╡рд╛ рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдмрд╕ PM2.
рдпрд╣ рд╢реБрд░реВ рд╣реЛрдиреЗ рдкрд░ рдПрдХ рдирдпрд╛ рдХрдиреЗрдХреНрд╢рдирдкреВрд▓ рдЦреЛрд▓реЗрдЧрд╛ рдФрд░ рдмрд╕ рд╡рд╣реАрдВ рдмреИрда рдЬрд╛рдПрдЧрд╛ред

рд╣рдореЗрдВ 5 рджрд┐рдиреЛрдВ рдореЗрдВ 3 рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реАрдВ, рдЬреЛ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рд╣реЛ рд░рд╣реА рд╣реИрдВ:
"рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐: sql.tilroy рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ред рдЖрдВрддрд░рд┐рдХ: 1433 - рдХрдиреЗрдХреНрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрд╛ (рдЕрдиреБрдХреНрд░рдо)"ред

рдпрд╣ рдХреЛрдб рд╣реИ:

`
рдХреЙрдиреНрд╕реНрдЯ рдХреЙрдиреНрдлрд┐рдЧрд░ = {
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛: config.sql.sqluser,
рдкрд╛рд╕рд╡рд░реНрдб: config.sql.sqlрдкрд╛рд╕рд╡рд░реНрдб,
рд╕рд░реНрд╡рд░: config.sql.sqlhost,
рдбреЗрдЯрд╛рдмреЗрд╕: Config.sql.sqldatabase,
рдкреЛрд░реНрдЯ: config.sql.sqlport,
рдХрдиреЗрдХреНрд╢рди рдЯрд╛рдЗрдордЖрдЙрдЯ: 3000,
рдЕрдиреБрд░реЛрдз рд╕рдордп рд╕рдорд╛рдкреНрдд: 3000,
рдкреВрд▓: {
рдЕрдзрд┐рдХрддрдо: 100,
рдорд┐рдирдЯ: 1, // рд╕рднреА рдХрдиреЗрдХреНрд╢рди рдмрдВрдж рди рдХрд░реЗрдВред
рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЯрд╛рдЗрдордЖрдЙрдЯрдорд┐рд▓рд┐рд╕: 1000,
рдмреЗрджрдЦрд▓реА рд░рдирдЗрдВрдЯрд░рд╡рд▓рдорд┐рд▓рд┐рд╕: 1500000
}
};

const sqlConnection = new SQL.ConnectionPool(config, function (err) {
    Log.debug("got sql connection");
    if(err){
        Log.error(err);
        process.exit(1);
    }
});

sqlConnection.on('error', err => {
    Log.error(`Connection err : ${err}`);
    process.exit(1);
});

`

рд╣рдордиреЗ рдЕрдкрдиреЗ SQL рд╕рд░реНрд╡рд░ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд╛рдпрджрд╛ рдирд╣реАрдВ рд╣реБрдЖред рд╣рдорд╛рд░реЗ рд╕рднреА рдкреИрдХреЗрдЬ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдпреЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реАрдВред
рдХреБрдЫ рдФрд░ рд╣рдо рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рд╣рдо рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдердХрд╛рдК/mssql рдХреЛ рдлреЗрдВрдХрдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣реЗрдВрдЧреЗ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЗрд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

@TimTilroy рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рдХрдиреЗрдХреНрд╢рди рдкреВрд▓ рдпрд╛ рдердХрд╛рдК-рдХрдиреЗрдХреНрд╢рди-рдкреВрд▓ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдердХрд╛рдК рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдпрджрд┐ рдЖрдк рдХрдард┐рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╢рд╛рдпрдж рдЖрдк рдердХрд╛рдК-рдХрдиреЗрдХреНрд╢рди-рдкреВрд▓ рдПрдХ рдХреЛ рдЖрдЬрдорд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рд╕реЗ рдорджрдж рдорд┐рд▓рддреА рд╣реИ рдпрд╛ рдирд╣реАрдВред

рд╣рд╛рдп рдЗрдпрд╛рдирдЪреЛрдХреНрд╕,

рд╣рдо рдердХрд╛рдК-рдХрдиреЗрдХреНрд╢рди-рдкреВрд▓ рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди mssql рдкреИрдХреЗрдЬ рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрдиреЗрдХреНрд╢рдирдкреВрд▓ (рдЗрд╕рдХрд╛ рдердХрд╛рдК рдЙрдкрдпреЛрдЧ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ)ред

рд╣рд╛рд▓рд╛рдБрдХрд┐ рд╣рдордиреЗ mssql рдкреИрдХреЗрдЬ рдХреЛ рдЕрдм рд╕рдВрд╕реНрдХрд░рдг 5.1 рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕реНрдерд┐рд░ рд▓рдЧрддрд╛ рд╣реИ, рд╣рдореЗрдВ рдЕрдкрдиреА рдкрд░реАрдХреНрд╖рдг рд╕реЗрд╡рд╛ рдкрд░ рдХреЛрдИ рдФрд░ рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИред рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:

рдкреВрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдиреЛрдб-рдкреВрд▓ рд╕реЗ tarn.js . рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛

рддреЛ рд╢рд╛рдпрдж рдЗрд╕рд╕реЗ рд╣рдорд╛рд░реА рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЧрдИред

рд╣рдо рдиреНрдпреВрдирддрдо рдкреВрд▓ рдХрдиреЗрдХреНрд╢рди рдХреЛ 0 рдкрд░ рднреА рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдЗрд╕рдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред

@MarioPerezEsteso рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рддреЛ рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ TCP IP рд╕рдХреНрд╖рдо рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╕рд╣реА рдкреЛрд░реНрдЯ рдирдВрдмрд░ рд╣реИ, рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╕рд░реНрд╡рд░ рдкрд╣реБрдВрдЪ рдпреЛрдЧреНрдп рд╣реИ рдпрд╛ рдирд╣реАрдВред

@regevbr , @ Praveen335 рдпрджрд┐ рдЖрдк рдХрдиреЗрдХреНрд╢рди рдкреВрд▓рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рдиреЛрдб-рдкреВрд▓ рдХреЗ рдмрдЬрд╛рдп tarn.js рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ рдЯрд┐рдордЯрд┐рд▓рд░реЙрдп рдиреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЖрдкрдХреЗ рдХрдиреЗрдХреНрд╢рди рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рд╢рд╛рдпрдж рдирд╡реАрдирддрдо mssql (v5.1) рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред

рдЕрджреНрдпрддрди: рд╣рдордиреЗ рдЕрдкрдиреА рд╕рднреА sql рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП mssql (5.1.0) рдХрд╛ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ, рдиреНрдпреВрдирддрдо рдкреВрд▓ рдХрдиреЗрдХреНрд╢рди рдХреЛ 0 рдкрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рдмрд╛рдж рд╕реЗ рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдмрдВрдж рд╣реЛ рдЧрдИ рд╣реИрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдирд╛рдо рдореЗрдВ "\" рдХреЗ рдмрдЬрд╛рдп "/" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдЙрд╕ рддрд░рд╣ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ

@ рдкреНрд░рд╡реАрдг 335 рдХреНрдпрд╛ рдЖрдкрдиреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП mssql (5.1.0) рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдмреЗрдЭрд┐рдЭрдХ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВред

рдореИрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ:
mssql: "^ 6.2.0",
рдердХрд╛рдК: "^8.3.0"

рдореИрдВрдиреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрдХ рдореЗрдВ рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рд╣реИред рд╕рд╛рде рд╣реА рдореЗрд░реА рд╕рднреА sql рд╕реЗрд╡рд╛рдПрдВ рдЪрд▓ рд░рд╣реА рд╣реИрдВред рдЕрднреА рддрдХ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рд╣реЛ рд░рд╣реА рд╣реИ:

C:\Nodejs\node-sql-conn\Database>рдиреЛрдб Connect.js
рдердХрд╛рдК рдкрджрд╛рд╡рдирдд tedious рдХреЗ рдЕрдЧрд▓реЗ рдкреНрд░рдореБрдЦ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдПрдХ рдирдпрд╛ Connection рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдмрдирд╛рдиреЗ рд╕реЗ рд╕рд░реНрд╡рд░ рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдХреГрдкрдпрд╛ рдЗрд╕ рд╕рдВрджреЗрд╢ рдХреЛ рд╢рд╛рдВрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП connect рд╣реЗрд▓реНрдкрд░ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдпрд╛ рдирдП рдмрдирд╛рдП рдЧрдП Connection рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ .connect рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВред рдЖрдВрддрд░рд┐рдХ\рдкреНрд░рдХреНрд░рд┐рдпрд╛\task_queues.js:79:11
рдХрдиреЗрдХреНрд╢рди рд╡рд┐рдлрд▓

C:\Nodejs\node-sql-conn\Databaseconnect.js:26
рдЧрд▓рддреА рдлреЗрдВрдХреЛ;
^
рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐ : рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓: рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд - рдПрдХ рд╕реНрдЯреНрд░реАрдо рдХреЗ рдирд╖реНрдЯ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд▓рд┐рдЦрдиреЗ рдХреЛ рдХреЙрд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛
рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐ рдкрд░ (C:\Nodejs\node-sql-conn\node_modulestedious\lib\errors.js:13:12)
Connection.socketError рдкрд░ (C:\Nodejs\node-sql-conn\node_modulestedious\libconnection.js:1308:56)
рд╕реЙрдХреЗрдЯ рдкрд░ред(C:\Nodejs\node-sql-conn\node_modulestedious\libconnection.js:1143:14)
Socket.emit рдкрд░ (events.js:327:22)
errorOrDestroy рдкрд░ (рдЖрдВрддрд░рд┐рдХ/рд╕реНрдЯреНрд░реАрдо/рдирд╖реНрдЯ.рдЬреЗрдПрд╕:108:12)
onwriteError рдкрд░ (_stream_writable.js:418:5)
рдСрдирд░рд╛рдЗрдЯ рдкрд░ (_stream_writable.js:445:5)
doWrite рдкрд░ (_stream_writable.js:399:11)
рд░рд╛рдЗрдЯрдСрд░рдмрдлрд░ рдкрд░ (_stream_writable.js:387:5)
Socket.Writable.write рдкрд░ (_stream_writable.js:318:11) {
рдХреЛрдб: 'рдИрд╕реЛрдХреЗрдЯ'
}

рдпрд╣ рдореЗрд░рд╛ рдХреЛрдб рд╣реИ:
рд╡рд░ рдХрдиреЗрдХреНрд╢рди = рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ('рдердХрд╛рдК')ред рдХрдиреЗрдХреНрд╢рди;
рд╡рд░ рд╡рд┐рдиреНрдпрд╛рд╕ = {
рд╕рд░реНрд╡рд░: 'рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ',
рдкреНрд░рдорд╛рдгреАрдХрд░рдг: {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: 'рдбрд┐рдлрд╝реЙрд▓реНрдЯ',
рд╡рд┐рдХрд▓реНрдк: {
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо: 'рд╕рд╛',
рдкрд╛рд╕рд╡рд░реНрдб: '####',
рдмрдВрджрд░рдЧрд╛рд╣: 1433
}
},
рд╡рд┐рдХрд▓реНрдк: {
рдбреЗрдЯрд╛рдмреЗрд╕: 'рдХрдВрдкрдиреА',
рдЙрджрд╛рд╣рд░рдг рдирд╛рдо: 'MSSQLSERVER',
рдкрдВрдХреНрддрд┐ рдЪрдпрдирдСрдирдбреЛрди: рд╕рдЪ,
рдХреЙрд▓рдордирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: рдЭреВрдард╛,
рдЯреНрд░рд╕реНрдЯрд╕рд░реНрд╡рд░рдкреНрд░рдорд╛рдг рдкрддреНрд░: рдЭреВрдард╛
}
};
рд╡рд░ рдХрдиреЗрдХреНрд╢рди = рдирдпрд╛ рдХрдиреЗрдХреНрд╢рди (рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди);
рдХрдиреЗрдХреНрд╢рди.рдСрди ('рдХрдиреЗрдХреНрдЯ', рдлрд╝рдВрдХреНрд╢рди (рдЧрд▓рддреА) {
рдЕрдЧрд░ (рдЧрд▓рддреА) {
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ ('рдХрдиреЗрдХреНрд╢рди рд╡рд┐рдлрд▓');
рдЧрд▓рддреА рдлреЗрдВрдХреЛ;
}
рдЕрдиреНрдпрдерд╛{
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ ('рдХрдиреЗрдХреНрдЯреЗрдб');
}
});
рдореЙрдбреНрдпреВрд▓.рдПрдХреНрд╕рдкреЛрд░реНрдЯреНрд╕ = рдХрдиреЗрдХреНрд╢рди;

Microsoft рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирдореВрдиреЗ рд╕реЗ рдХреЙрдкреА рдХрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА: https://www.microsoft.com/en-us/sql-server/developer-get-started/node/windows/step/2.html

рдЕрдВрдд рдореЗрдВ, рдореИрдВрдиреЗ "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореИрдиреЗрдЬрд░" -> "рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди" -> "рдкреНрд░реЛрдЯреЛрдХреЙрд▓" -> "рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА" рдореЗрдВ рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдХреЗ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ред
SQLServerConfigurationManager

C:\Users\zpc\Desktop\SqlServerSample>node connect.js { ConnectionError: Failed to connect to localhost:1433 - Could not connect (sequence) at ConnectionError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\errors.js:13:12) at Connection.socketError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1183:28) at Connector.execute (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connection.js:1022:21) at SequentialConnectionStrategy.connect (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:69:7) at Socket.onError (C:\Users\zpc\Desktop\SqlServerSample\node_modules\tedious\lib\connector.js:84:12) at Socket.emit (events.js:189:13) at emitErrorNT (internal/streams/destroy.js:82:8) at emitErrorAndCloseNT (internal/streams/destroy.js:50:3) at process._tickCallback (internal/process/next_tick.js:63:19) message: 'Failed to connect to localhost:1433 - Could not connect (sequence)', code: 'ESOCKET' }

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рд╕рдорд╛рдзрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдореИрдВ рдЗрд╕ ESOCKET рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рднреА рдкреНрд░рдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдпрд╣ рдореБрджреНрджрд╛ рдЯреАрд╕реАрдкреА/рдЖрдИрдкреА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдРрдк рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдИрд╕реА 2 рд╕реЗ рдПрдПрд╕ рдЖрд░рдбреАрдПрд╕ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдпрд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЕрдВрдд рдореЗрдВ рдореИрдВрдиреЗ рддреНрд░реБрдЯрд┐ рд╣рд▓ рдХреАред рд╣рд░ рдмрд╛рд░ рдирдП рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдкрд░ рдореИрдВ рдЬрд┐рд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛:

function getConnection () {
    // console.log("config")
    // console.log(config)
    return new Promise(function (resolve, reject) {
        const pool = new sql.ConnectionPool(getConfig())
        // console.log("Getting connection...");
        pool.connect()
        .then((cn) => {
            // console.log("connection got");
            resolve(cn);
        })
        .catch((e) => {
            // console.log("connection not got");
            reject(e);
        });
    })
}

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬрд┐рд╕рдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛:

function runCommand(cmdText) {
    return new Promise((resolve, reject) => {
        pool2Connect
        .then((pool) => {
            // pool.request() // or: new sql.Request(pool2)
            // .input('input_parameter', sql.Int, 10)
            // .output('output_parameter', sql.VarChar(50))
            // .execute('procedure_name', (err, result) => {
            //     // ... error checks
            //     console.dir(result)
            // })
            pool.request() // or: new sql.Request(pool2)
            .query(cmdText)
            .then((rows) => {
                return resolve(rows.recordset);
            })
            .catch((e) => {
                return reject(e);
            });
        })
        .catch((err) => {
            return reject(err);
        });
    });
}

рдЬрд╣рд╛рдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рдкреВрд▓ 2 рдХрдиреЗрдХреНрдЯ рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ:

    pool2 = new sql.ConnectionPool(config);
    pool2Connect = pool2.connect();
    pool2.on('error', err => {
        console.log(err);
    });

рдЖрд╢рд╛ рд╣реИ рдпреЗ рдорджрдж рдХрд░реЗрдЧрд╛

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

ricklang picture ricklang  ┬╖  9рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

arthurschreiber picture arthurschreiber  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

cdibbs picture cdibbs  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

codethyme picture codethyme  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

spacem picture spacem  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ