如何查看Sequelize.js生成的SQL?

  发布于 2023-01-30 16:52

我想看看发送到PostgreSQL服务器的SQL命令,因为我需要检查它们是否正确.特别是,我对表创建命令感兴趣.

例如,ActiveRecord(Ruby)将其SQL语句打印到标准输出.这可能与Node.js/ActionHero.js和Sequelize.js一样吗?

3 个回答
  • 初始化sequelize时可以传递日志记录选项,可以是函数或console.log

    var sequelize = new Sequelize('database', 'username', 'password', {
        logging: console.log
        logging: function (str) {
            // do your own logging
        }
    });
    

    如果只想查看表创建查询,还可以将日志记录选项传递给.sync

    sequelize.sync({ logging: console.log })
    

    2023-01-30 16:54 回答
  • 如日志中所述Error: Please note that find* was refactored and uses only one options object from now on..对于最新的sequelize版本(4),如果您只想获得一个命令的结果:

    User.findAll({where: {...}, logging: console.log})

    2023-01-30 16:56 回答
  • 如果你想查看一个命令的sequelize,你可以听它并附加一个函数来打印sql.

    看看这个例子:

    User.find(1).on('sql', console.log).then(function(user) {
      // do whatever you want with the user here
    

    2023-01-30 16:56 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有