我尝试使用 sequelize 连接到读取复制:
const Sequelize = require('sequelize');
const sequelize = new Sequelize('database', null, null, {
dialect: 'mssql',
replication: {
read: [{
host: 'hostRead',
username: 'username',
password: 'password'
}],
write: {
host: 'hostWrite',
username: 'username',
password: 'password'
}
}
});
(async () => {
const result = (await sequelize.query('SELECT @@servername'))[0][0];
console.log(result);
})();
当我运行它时,它会打印写入 serverName 而不是读取的。为什么会这样?
最佳答案
显然 sequelize 本身不会解析您的查询类型,因此您必须明确指定原始 sequelize 查询的查询类型,如下所示:
const result = (await sequelize.query('SELECT @@servername', { type: QueryTypes.SELECT }));
关于javascript - Sequelize 不使用读取复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65805804/