ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Sequelize] 기본키가 아닌 다른 키로 외래키 지정할 때
    개발일지/Node 2023. 5. 17. 18:27

    Sequelize를 이용해서 DB 조회를 하던 중 부모 테이블의 기본키가 아닌 다른 키를 참조해서 자식 테이블을 불러와야 할 필요가 있었다.

    A 테이블

    a_idx (primary key) b_idx a_name
    1 1 그룹명

    B 테이블

    b_idx b_name b_description
    1 아무개 프로그래머
    db.A.hasMany(db.B, { foreignKey: 'b_idx', as: 'B' })
    db.B.belongsTo(db.A, { foreignKey: 'b_idx', as: 'A' })

    A 테이블의 a_idx가 기본 키로 설정되어 있고, a_idx가 아닌 b_idx를 참조하려 foreignKey: 'b_idx' 값을 줬더니, 멋대로 a_idx 값을 참조했다. sourceKey: 'b_idx'까지 추가하여 해결하였다.

    db.A.hasMany(db.B, { foreignKey: 'b_idx', sourceKey: 'b_idx' as: 'B' })
    db.B.belongsTo(db.A, { foreignKey: 'b_idx', as: 'A' })

    '개발일지 > Node' 카테고리의 다른 글

    Node.js 설치 전 AWS Linux2에 nginx 설치  (0) 2021.08.05

    댓글

Designed by Tistory.