본문 바로가기
반응형

개발/데이터베이스15

[RDB] 엔티티타입의 통합과 분리 RDB(관계형 데이터베이스)에서의 엔티티 타입(Entity Type)은 데이터 모델링 과정에서 매우 중요한 개념입니다. 엔티티 타입은 실제 세계의 객체 또는 사물을 데이터베이스 내에서 표현한 것으로, 이를 통해 정보를 구조화하고 저장합니다. 엔티티 타입에 대한 주요 특징은 다음과 같습니다: 1. 정의: 엔티티 타입은 비슷한 속성(Attributes)을 공유하는 객체들의 집합입니다. 예를 들어, '학생', '교수', '과목' 등은 각각 학생들, 교수들, 과목들을 대표하는 엔티티 타입입니다. 2. 속성: 각 엔티티 타입은 여러 속성을 가집니다. 이 속성들은 엔티티의 특성을 나타냅니다. 예를 들어, '학생' 엔티티 타입은 이름, 학번, 전공 등의 속성을 가질 수 있습니다. 3. 인스턴스: 엔티티 타입의 구체적.. 2023. 11. 16.
[RDB] 이력 유형 데이터 모델 시간에 따라 발생하는 데이터 형식을 이력이라고 합니다. 이력 데이터 모델의 특징은 다음과 같습니다. 시간에 따라 발생 동일한 컬럼에 발생 대량 데이터가 발생할 가능성이 높음 성능에 영향을 주는 경우가 많음 실전에서 적용하는 이력의 유형은 세가지로 구분할 수 있습니다. 테이블 구분에 따라 구분하는 방법 내부스냅샷 이력 별도의 테이블 없이 시간에 따라 자기 자신의 테이블에 데이터가 발생되는 구조 이력 테이블이 마스터이므로 관계를 통해 PK구조도 모두 상속 일부 속성값이 변경되어도 전체 속성값 생성 1:M 스냅샷 전체 이력 별도의 테이블에 마스터 테이블의 현재정보를 포함해 변경된 모든 정보를 보관함 현재 정보 포함, 일부 변경되어도 전체 생성 1:M 스냅샷 과거 이력 마스터 테이블에는 현재 정보만 존재, 이력.. 2023. 11. 15.
[RDB] 식별자관계와 비식별자관계 RDB(관계형 데이터베이스)에서 식별자 관계와 비식별자 관계는 데이터 모델링의 중요한 부분입니다. 식별자 관계 (Identifying Relationship) 이 관계는 부모 테이블의 기본 키가 자식 테이블의 기본 키로도 사용되는 경우를 말합니다. 예를 들어, '사용자' 테이블과 '사용자 주소' 테이블이 있을 때, '사용자'의 기본 키가 '사용자 주소' 테이블에도 기본 키로 포함되어 있으면 이는 식별자 관계입니다. 식별자 관계는 부모 테이블과 자식 테이블 간에 강한 의존성을 가지며, 부모 테이블 없이는 자식 테이블의 레코드가 존재할 수 없습니다. 비식별자 관계 (Non-Identifying Relationship) 이 관계는 부모 테이블의 기본 키가 자식 테이블의 기본 키로 사용되지 않고, 외래 키로만 .. 2023. 11. 14.
MySQL 프로시저를 자바 코드로 이관 MySQL 프로시저를 자바 코드로 이관하려고 합니다. 사유는 다음과 같습니다. 프로시저 안에서 트랜잭션을 선언하게 될 경우 스프링 트랜잭션과 별개로 트랜잭션이 생성되어 원자성 위배 버전관리가 어려움 프로시저의 새 버전이 나오면 _new, _v(n)등으로 새 버전의 프로시저를 생성 디버깅이 어려움 아래와 같은 프로시저가 있다고 가정합니다. CREATE PROCEDURE `procedure_v1` ( IN p_status INT(2) , IN p_member_id BIGINT ) BEGIN DECLARE v_status VARCHAR(10) DEFAULT NULL; SELECT status INTO v_status FROM member WHERE id = p_member_id; IF v_status p_st.. 2023. 11. 13.
반응형