刚刚开始使用Sequelize,并尝试让迁移正常工作,并希望看到迁移实际针对数据库运行的SQL。
我找到了一个github comment,它建议如何通过管道将日志记录到调试模块,但是我应该把“选项”放在哪里呢?
options: {
logging: debug('sequelize')
}发布于 2018-03-20 02:51:35
在配置连接数据库(文件data_base.json). )中启用"logging":true
示例
{
"username": "postgres",
"password": "postgres",
"database": "agencias",
"host": "127.0.0.1",
"dialect": "postgres",
"timezone": "America/La_Paz",
"migrationStorage": "sequelize",
"migrationStorageTableName": "sequelize_migration",
"logging":true,
"pool": {
"max": 15,
"min": 0,
"idle": 10000
}
}在项目中执行
sequelize db:migrate --migrations-path src/migrations --config data_base.json发布于 2016-12-01 09:39:36
有几个可能的地方可以为sequelize添加这个。如果您想要查看sequelize CLI (参见documentation)的所有日志记录,请在.sequelizerc中执行。如果您只想在向上/向下迁移中的特定查询中看到它,那么您可以将它作为options的一部分传递给每个queryInterface调用。
例如,对于createTable,您可以执行以下操作:
queryInterface.createTable('myNewTable', {
'my_column': Sequelize.STRING
}, {
logging: console.log
});发布于 2016-10-24 01:22:35
Sequelize CLI将config/config.js中定义的配置传递给sequelize构造函数。运行sequelize db:migrate时,使用以下命令记录SQL查询
'use strict';
module.exports = {
development: {
host: process.env.MSSQL_SERVER || 'localhost',
username: process.env.MSSQL_USER || 'MSSQL_USER',
password: process.env.MSSQL_USER_PASS || 'MSSQL_PASS',
database: process.env.MSSQL_DB || 'DATABASE_NAME',
dialect: process.env.DIALECT || 'mssql',
logging: console.log
}
};https://stackoverflow.com/questions/33948072
复制相似问题