#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:
Ага, моя проблема вызвана ‘ANT’, инструментом развертывания, я использовал ANT для копирования папки и файлов в ‘node-model’ , но кодировка файла ‘sbc-data-generated.js’ был изменен с UTF-8 на ANSI. это вызвало проблему.
мое решение было — добавлено ‘encoding= «UTF-8″‘ в build.xml