Кодировка ‘_sbcs’ содержит неправильные ‘символы’ (должны быть len 128 или 256) при использовании node-mssql

#sql-server #encoding #node-sqlserver

#sql-server #кодировка #узел-sqlserver

Вопрос:

Я использую node-mysql для возврата простого набора данных, в моей таблице db есть только 2 поля varchar, когда я запустил свое приложение для запроса данных, оно выдает ошибку ‘Кодировка ‘_sbcs’ содержит неправильные ‘chars’ (должна быть len 128 или 256) ‘

версии:
* NodeJS: 10.15.3
* node-mssql: 4.3.5
* SQL Server: ms SQL 2014

Ошибка: Кодировка ‘_sbcs’ содержит неправильные ‘символы’ (должен быть len 128 или 256) в новом SBCSCodec (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulesiconv-liteencodingssbcs-codec.js:14:15 ) в Object.getCodec (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulesiconv-litelibindex.js:100:25 ) в Object.GetDecoder (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulesiconv-litelibindex.js:127:23 ) в Object.decode (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulesiconv-litelibindex.js:40:25 ) в C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibvalue-parser.js:379:22 в C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:433:9 в Parser.awaitData (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:144:9 ) в анализаторе.ReadBuffer (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:430:12 ) в readChars (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibvalue-parser.js:378:19 ) в C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibvalue-parser.js:188:20 в C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:203:9 в Parser.awaitData (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:144:9 ) в Parser.readUInt16LE (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:200:12 ) при readDataLength (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibvalue-parser.js:67:27 ) в C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibvalue-parser.js:89:5 в readTextPointerNull (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibvalue-parser.js:36:5) в valueParse (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibvalue-parser.js:88:3 ) при следующем (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokennbcrow-token-parser.js:34:45 ) в C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokennbcrow-token-parser.js:53:5 в C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:433:9 в Parser.awaitData (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:144:9 ) в Parser.ReadBuffer (C:UsersqpanDownloadsbzwapp-1.2.0 0272bzwappslibauthmssql-authnode_modulestediouslibtokenstream-parser.js:430:12)

Комментарии:

1. github.com/NielsLeenheer/EscPosEncoder/issues/3

Ответ №1:

Ага, моя проблема вызвана ‘ANT’, инструментом развертывания, я использовал ANT для копирования папки и файлов в ‘node-model’ , но кодировка файла ‘sbc-data-generated.js’ был изменен с UTF-8 на ANSI. это вызвало проблему.

мое решение было — добавлено ‘encoding= «UTF-8″‘ в build.xml