我正在尝试与MS SQL建立连接,但是由于某些原因,sequelize无法正确传递主机名,而不是传递“ localhost \ SQLEXPRESS”,而是传递了“ localhostSQLEXPRESS”。知道在哪里修复它吗?
'use strict';
const _ = require('lodash');
var Sequelize = require('sequelize');
var sequelize = new Sequelize('mydb', 'db_user', 'db_user', {
host: 'localhost\SQLEXPRESS',
dialect: 'mssql',
pool: {
max: 5,
min: 0,
idle: 10000
},
});
// define model
var batchDetails = sequelize.define('batchDetails', {
id: {
type: Sequelize.STRING,
autoIncrement: true,
field:'id',
primaryKey: true
},
batch_no: {
type: Sequelize.STRING,
field:'batch_no',
},
date: {
type: Sequelize.DATE,
field:'date',
}
})
batchDetails.sync({force: true}).then(function () {
// Table created
return User.batchDetails({
id: 1,
batch_no: 'CASFR342'
});
});
错误日志:-
sequelize不推荐使用现在不推荐使用基于字符串的运算符。请 使用基于符号的运算符以获得更好的安全性,请参见 http://docs.sequelizejs.com/manual/tutorial/querying.html#operators node_modules \ sequelize \ lib \ sequelize.js:242:13乏味的
options.encrypt
的默认值将从false
更改为true
。如果您想保留当前版本,请明确传递false
行为。 node_modules \ sequelize \ lib \ dialects \ mssql \ connection-manager.js:69:26 未处理的拒绝SequelizeHostNotFoundError:无法连接到 本地主机SQLEXPRESS:1433-getaddrinfo ENOTFOUND本地主机SQLEXPRESS 在Connection.connection.on.err(C:\ Node JS Workspace \ db \ node_modules \ DB \ node_modules \ sequelize \ lib \ dialects \ mssql \ connection-manager.js:97:22) 在emitOne上(events.js:116:13) 在Connection.emit(events.js:211:7) 在Connection.socketError(C:\ Node JS Workspace \ db \ node_modules \ DB \ node_modules \ tedious \ lib \ connection.js:1016:14) 在C:\ Node JS Workspace \ db \ node_modules \ DB \ node_modules \ tedious \ lib \ connection.js:861:25 在GetAddrInfoReqWrap.callback(C:\ Node JS Workspace \ db \ node_modules \ DB \ node_modules \ tedious \ lib \ connector.js:69:18) 在GetAddrInfoReqWrap.onlookupall [按完成](dns.js:104:17)
答案 0 :(得分:0)
更新您的主机路径。
localhost\SQLEXPRESS
localhost\\SQLEXPRESS
答案 1 :(得分:0)
此配置在我的本地sql server express上有效:
var sequelize = new Sequelize('db', 'db_user', 'db_pwd', {
host: 'localhost',
dialect: 'mssql',
dialectOptions: {
options: { instanceName: "sqlexpress" }
}
});
诀窍在dialectOptions.instanceName
属性中。