Я использую Electron (пробовал и 2.x, и 5.0.x) вместе с Sequelize / Tedious для разработки настольного приложения. При извлечении данных из mssql оно всегда конвертирует поля DATETIME, добавляя смещение локального часового пояса (например, +04: 00)
.
Поле mssql DATETIME не содержит информацию о часовом поясе, кажется, что Electron считает его временем UTC, как его предотвратить? Что странно, когда я использую Sequelize / Tedious без Electron, все в порядке, но в Electron, независимо от того, какие параметры введены в dialectOptions, он не будет работать, в том числе useUTC / timezone / typeCast / process.env.TZ, Единственное решение, которое работает, это переключение часового пояса моего компьютера на UTC.
var conn = new Sequelize('xxx', 'xxx', 'xxx', {
host: '127.0.0.1',
port: 1433,
dialect: 'mssql',
dialectOptions: {
encrypt: false,
timezone: '+04:00'
},
timezone: '+04:00',
logging: false,
define: {
freezeTableName: true,
charset: 'utf8',
timestamps: false
}
});