Programing

Sequelize.js에서 생성 된 SQL을 어떻게 볼 수 있습니까?

lottogame 2020. 10. 14. 07:18
반응형

Sequelize.js에서 생성 된 SQL을 어떻게 볼 수 있습니까?


올바른지 확인해야하기 때문에 PostgreSQL 서버로 전송되는 SQL 명령을보고 싶습니다. 특히 테이블 생성 명령어에 관심이 있습니다.

예를 들어, ActiveRecord (Ruby)는 SQL 문을 표준 출력으로 인쇄합니다. Node.js / ActionHero.js 및 Sequelize.js에서도 가능합니까?


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 })

하나의 명령에 대한 속편을보고 싶다면 그것을 듣고 SQL을 인쇄하는 함수를 첨부 할 수 있습니다.

이 예를 확인하십시오.

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

로그에 명시된대로 Error: Please note that find* was refactored and uses only one options object from now on.. 하나의 명령에 대한 결과 만 얻으려면 최신 sequelize 버전 (4)의 경우 :

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

참고 URL : https://stackoverflow.com/questions/21427501/how-can-i-see-the-sql-generated-by-sequelize-js

반응형