我正在尝试使用MySQL (14.5.0)中的mysql
npm模块从(5.5.35版本)中检索一些数据。
( 1.)下面是数据库的字符集变量:
( 2.)服务器编码:
( 3.)下面是我要从:获取数据的表的设置
( 4.)下面是我如何启动连接:
const mysql = require('mysql');
const dbConfig = require('../../config/database.json');
dbConfig.connectionLimit = 10;
dbConfig.charset = 'utf8' // tried latin1, latin2 and utf8mb4
console.log(dbConfig);
const connection = mysql.createPool(dbConfig);
module.exports = connection;
( 5.)下面是所有转换的结果:
该字段的值应该是Cieśliński
。
该字段现在的值是Cieœliñski
。
( 6.)当我将dbConfig.charset
设置为不同的编码时,结果如下:
Cie�li�ski
.:
Cie�li�ski
.:
Iconv
将latin1转换为utf8CieÅ“liñski
.:
Iconv
将latin1转换为utf8合适的值应该是:Cieśliński
。
(**Cieśliński
**)问题:如何设置服务器以正确获取字段的适当值?
发布于 2020-10-09 13:07:11
十六进制9CF1
latin1: ϖ
cp1250: śń
也就是说,在规范的某个地方,您使用的是latin1,而应该指定cp1250。
UTF-8 (utf8,utf8mb4)不参与.
在您提供了SELECT col, HEX(col) ...
之后,我可以告诉您它是否在表中乱七八糟。
https://stackoverflow.com/questions/64278361
复制相似问题