auth member log
cidi 유저 인증정보(이메일) 로긴 로그
소셜로긴 셋팅 값 뭐여러 로그
패스워드 유저 기본정보 ( 아이디 )
데이터베이스 3개 auth , member , log 이렇게 나눠서 사용할 예정입니다요
아래가 member 데이터베이스에 유저 기본정보 테이블입니다요
@Entity({database:"member"})
export class BaseUsersModel {
@PrimaryGeneratedColumn({ type: "int",name:"user_no", comment: "Primary Key 각 객체 FK" })
user_no: number;
@Column("varchar", {name: "userid",unique: true,comment: "아이디",length: 20,})
userid: string;
@Column("datetime", {name: "create_at",nullable: true, comment: "Create Time",default: () => "CURRENT_TIMESTAMP",})
@CreateDateColumn()
create_at: Date;
}
아래는 auth 데이터베이스에 cidi 입니다요
@Entity({database : "auth",name:"cidi"})
export class AuthCiDiModel {
@PrimaryGeneratedColumn({ type: "int",name:"social_login_id", comment: "Primary Key" })
cidi_idx: number;
@Column("varchar",{length:256})
ci:string;
@Column("varchar",{length:256})
di:string
@OneToOne(() => BaseUsersModel)
@JoinColumn({ name: "user_no" })
AuthCidi: BaseUsersModel;
}
이론상 외래키가 박히는게 맞는데
Entity metadata for AuthCiDiModel#user_no was not found.
라고 합니다요
각 데이터베이스 생성 하고 테이블까지 각각 생성된건 확인됫는데
onetoone 박을려면 저렇게 뜹니다요
해결방법이 어찌되옵니까
만들어진 auth.cidi 테이블에 user_no 컬럼있니?
아뇨 없숨다
그럼 테이블생성이 잘못된거같으니까... 내가 typeorm은 잘 모르는데 아마 테이블 만들어져 있어서 새로 컬럼 업뎃 안된거같거든? 테이블들 날린담에 재생성하게 해봐라
ㅠㅠ 그래도 안되네요 postgresql 사용할떄는 이렇게 해도 됫던거같은데 mysql은 뭔가 막히네유 ㅜ
dist 지우고 다시 실행 ㄱㄷ
ㅜㅜ안데..
ㅅㅂㄹㅇ1234
...
typeorm 에서 서로 다른 데이터베이스 끼리 릴레이션을 못맺는다고 함 ,, 그래서 그냥 다 같은 데이터베이스에 박아서함 ㅜ