>  기사  >  데이터 베이스  >  데이터베이스 설계의 세 가지 주요 패러다임을 이해합니다.

데이터베이스 설계의 세 가지 주요 패러다임을 이해합니다.

迷茫
迷茫원래의
2017-03-26 13:34:001991검색

데이터베이스 설계 패러다임

패러다임이란 간단히 말하면, 데이터베이스 설계는 데이터 저장 성능과 개발자의 데이터 운영 관계에 큰 영향을 미칩니다. 따라서 과학적이고 표준화된 데이터베이스를 구축하려면 데이터 저장 방식을 최적화하기 위한

사양을 충족해야 합니다. 관계형 데이터베이스에서는 이러한 사양을 패러다임이라고 부를 수 있습니다.

세 가지 주요 정규형은 무엇입니까?

첫 번째 정규형: 관계형 스키마 R의 모든 속성을 더 기본적인 정규형으로 분해할 수 없는 경우 데이터 단위인 R은 첫 번째 정규형(약어로 1NF)을 만족한다고 합니다. 첫 번째 정규형을 만족시키는 것은 관계형 모델의 표준화를 위한 최소 요구 사항입니다. 그렇지 않으면 이러한 관계형 모델에서는 많은 기본 작업이 구현되지 않습니다.

두 번째 정규형: 관계형 패턴 R이 첫 번째 정규형을 만족하고 R의 모든 비기본 속성이 R의 각 후보 키 속성에 완전히 종속되는 경우 R은 다음과 같다고 합니다. 2NF로 약칭합니다.

세 번째 정규형: R이 첫 번째 정규형의 조건을 충족하는 관계형 패턴이고 X가 R의 임의 속성 집합이라고 가정합니다. X가 임의의 후보에 비전이적으로 종속되는 경우 R의 키워드에 따르면 R은 3NF로 약칭되는 세 번째 정규형을 만족합니다.

참고:

관계는 본질적으로 2차원 테이블, 각 행은 튜플, 각 열은 속성 3대 패러다임 이해

첫 번째 정규형

1. 각 열의 속성은 환원 불가능한 속성 값이므로 각 열의 원자성을 보장합니다. 2. 두 열의 속성은 다음과 같습니다. 닫기, 유사 또는 동일, 중복된 데이터가 생성되지 않도록 동일한 속성을 가진 열을 병합해 보십시오.

어느 지방, 시를 알고 분류해야 한다면 당연히 첫 번째 테이블은 그렇지 않습니다. 욕구를 충족시키기 쉬운 것은 첫 번째 패러다임을 따르지 않습니다.

분명히 첫 번째 테이블 구조는 충분한 항목의 요구 사항을 충족할 수 없을 뿐만 아니라 항목이 적을 때 중복성을 생성합니다. 또한 첫 번째 패러다임과도 일치하지 않습니다.

두 번째 정규형

데이터의 각 행은 열 중 하나에만 관련될 수 있습니다. 한 행의 데이터는 한 가지 작업만 수행할 수 있습니다. 데이터 열에서 데이터 중복이 발생할 때마다 테이블을 분할해야 합니다.

동시에 여러 객실을 예약하시는 분은 나옵니다. 하나의 주문번호에 여러 개의 데이터가 있어서 연락처가 모두 반복되어 데이터 중복이 발생합니다. 그를 분해해야 해요.

이렇게 하면 하나의 데이터가 복잡한 관계 논리 없이 한 가지 일을 할 수 있습니다. 동시에 테이블 데이터를 업데이트하고 유지 관리하는 것이 더 쉽습니다.

제3정규형

데이터는 전이적 관계를 가질 수 없습니다. 즉, 어떤 속성도 데이터와 직접 관련되지 않습니다. 기본 키. 간접적인 관계가 아닙니다. a-->b-->c와 같은 속성 간의 관계는 세 번째 정규형을 따르지 않습니다. 예를 들어 Student 테이블(학생번호, 이름, 나이, 성별, 학교, 학교 주소, 학교 전화번호)

과 같은 테이블 구조에서는 위와 같은 관계가 존재합니다. 학생 ID --> 학교 --> (학교 주소, 학교 전화번호)

이러한 테이블 구조를 다음과 같이 분해해야 합니다.

(학생번호, 이름, 나이, 성별, 학교)--(학교, 학교 주소, 학교 전화번호)

마지막으로

세 가지 주요 패러다임은 일반적인 데이터베이스 설계의 기본 개념일 뿐이며, 중복성이 적고 합리적인 구조로 데이터베이스를 구축할 수 있습니다. 특별한 상황이 있다면 당연히 특별하게 다루어야 합니다. 데이터베이스 설계에서 가장 중요한 것은 수요 > 성능 > 테이블 구조입니다. 그러므로 우리는 데이터베이스 구축이라는 패러다임을 맹목적으로 추구할 수는 없습니다.

위 내용은 데이터베이스 설계의 세 가지 주요 패러다임을 이해합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.