我是Sequelize.js和Node.js的新手,我们的后端数据库是SQL Server 2014,所以我们使用Sequelize.js作为ORM层,我们需要处理数据中的非英语字符.
当我尝试使用sequelize create方法插入非英文字符时,我只进入???DB,调试后我发现原因如下,但我不知道是否有任何现有的好解决方案来修复它.
下面是我在我的应用程序中创建的一个测试模型,我将使用sequelize.import方法生成表模式,然后调用fillTestData方法在我对DB服务器调用sync之后将测试数据插入到DB中,但是我只获得了很多'????'在DB表中.
var Promise = require("sequelize").Promise;
module.exports = function(sequelize, DataTypes) {
var Test = sequelize.define("Test", {
ID: {
type: DataTypes.BIGINT,
primaryKey: true,
autoIncrement: true
},
Name: {
type: DataTypes.STRING(255),
allowNull: true
}
}, {
charset: "utf8",
classMethods: {
fillTestData: function(models) {
return Promise.join(
Test.create({Name: "hello"}),
Test.create({Name: "aello"}),
Test.create({Name: "Aello"}),
Test.create({Name: "bello"}),
Test.create({Name: "?????"}),
Test.create({Name: "?????"}),
Test.create({Name: "????????"}),
Test.create({Name: "??????????"}),
Test.create({Name: "Hallå"}),
Test.create({Name: "??"}),
Test.create({Name: "??"}),
Test.create({Name: "???, ?????"}),
Test.create({Name: "???? ??????"}),
Test.create({Name: …Run Code Online (Sandbox Code Playgroud)