봄/겨울잠을 사용하여 웹 응용 프로그램을 만들 계획입니다.PostgreSQL에서 상속을 디자인하기위한 유형 열을 추가해야합니까?
상속을 지원하기 위해 내 postgresql 데이터베이스를 어떻게 디자인해야합니까?
다음 표가 있다고 가정합니다 : super_table, sub_table_1, sub_table_2.
그런 다음 sub_table_1 및 subtable_2는 super_table을 상속합니다.
super_table의 행이 sub_table_1 또는 sub_table_2 인 경우
을 알 수 있도록 유형 열 (예 : char 또는 int)을 추가해야합니까?
알려 주시기 바랍니다. 감사.
CREATE TABLE Super_Table (
super_id SERIAL PRIMARY KEY,
sub_type CHAR(1) NOT NULL,
UNIQUE KEY (super_id, sub_type)
);
CREATE TABLE Sub_Table_A (
super_id PRIMARY KEY,
sub_type CHAR(1) NOT NULL,
CHECK (sub_type = 'A'),
FOREIGN KEY (super_id, sub_type) REFERENCES Super_Table (super_id, sub_type)
);
CREATE TABLE Sub_Table_B (
super_id PRIMARY KEY,
sub_type CHAR(1) NOT NULL,
CHECK (sub_type = 'B'),
FOREIGN KEY (super_id, sub_type) REFERENCES Super_Table (super_id, sub_type)
);
지금 Super_Table의 행이 모두 하위 테이블에 행에서 참조 할 수있는 방법이 없습니다 :
어떤 문제가 있습니까? Spring/Hibernate의 상속은 PostgreSQL과 다른 범위를 가지고 있습니다. 당신이 가지고 있지 않은 문제를 해결하려고하지 마십시오, 당신은 진짜 문제로 끝날 것입니다. –