분류 전체보기88 정규화란 무엇인가 본 내용은 한빛미디어의 데이터베이스 개론(3판)을 읽고 정리한 내용입니다. 속성(attribute)들 간의 종속성(dependency)을 분석해서 하나의 종속성이 하나의 릴레이션(relation)으로 표현되도록 분해해 나가는 과정을 정규화라 한다. 기본 원칙은 다음 3가지이다. 정보의 무손실 분해된 릴레이션이 표현하는 정보는 분해되기 전의 정보를 모두 포함하여야 하며, 더 바람직한 구조여야 한다. 분해된 릴레이션은 조인을 통하여 언제든 원래 릴레이션의 모습으로 복원할 수 있어야 한다. 중복성 감소 중복으로 인한 이상 현상을 제거한다. 테이블의 분리 하나의 독립된 관계성은 하나의 독립된 릴레이션으로 분리하여 표현해야 한다. 정규형은 기본 정규형과 고급 정규형으로 나뉜다. 일반적으로는 기본 정규형인 1차 정.. 2023. 3. 22. 함수 종속 어느 시점에서든 릴레이션 내의 모든 튜플 값에 대하여 X 에 대한 Y 의 값이 하나라면 X 가 Y 를 함수적으로 결정한다. Y 가 X 에 함수적으로 종속되어 있다. 라고 한다. 이때, X를 결정자, Y를 종속자라 한다. 즉, 기본키는 각 속성들에 대한 값을 유일하게 결정할 수 있어야 한다. 함수 종속 관계를 판단할 때는 현재 시점에 릴레이션에 포함된 속성값만으로 판단해서는 안 된다. 릴레이션의 속성 값은 계속 변화하기 때문에 속성 자체가 가지고 있는 특성과 의미를 기반으로 판단해야 한다. 일반적으로 튜플을 유힐하게 구별하는 기본키와 후보키는 그 특성 때문에 릴레이션을 구성하는 다른 모든 속성들을 함수적으로 결정한다. 그러나 기본키나 후보키가 아니더라도 속성 Y 값을 유일하게 결정하는 속성 X는 함수 종속.. 2023. 3. 19. 유다시티 커밋 스타일 가이드 Udacity Nanodegree Style Guide Introduction This style guide acts as the official guide to follow in your projects. Udacity evaluators will use this guide to grade your projects. There are many opinions on the "ideal" style in the world of development. Therefore, in order to reduce the udacity.github.io 메시지 구조 커밋 메시지는 제목, 본문(선택 사항), 바닥글(선택 사항) 등 빈 줄로 구분된 세 부분으로 구성된다. 레이아웃은 다음과 같다. type: Subject .. 2023. 3. 18. JPA에서 네이티브 SQL 사용하기 프로젝트 진행 중 사용자가 생성한 유효한 티켓을 일괄적으로 만료시켜줄 필요가 있었다. 업데이트가 필요한 필드 중에 티켓의 생성 시각과 종료 시각의 유닉스 시간을 뺀 값을 기록하는 필드가 있었기 때문에 기존에 JPQL 만으로 해결하기에는 문제가 있었다. Spring Data JPA에서 네이티브 SQL을 사용하기 위해서는 기존의 @Query 애노테이션을 nativeQuery = true 로 설정해주기만 하면 된다. 이때 테이블의 컬럼명과 동일한 이름을 사용하는 것에 주의하여야 한다. @Modifying @Query(value = "update Ticket t" + " set t.ticket_status='END'," + " t.end_time=:endTime," + " t.active_time=:endTim.. 2023. 3. 6. 이전 1 ··· 12 13 14 15 다음