정보실

웹학교

정보실

sql 관계형 모델

본문

관계형 모델은 데이터 모델 게시물에 나와있는 가장 널리 사용되는 논리 데이터 모델이며 SQL 데이터베이스를 기반으로 합니다.


https://flaviocopes.com/relational-model/ 


관계형 모델은 가장 널리 사용되는 논리 데이터 모델이며 SQL 데이터베이스를 기반으로 합니다.


관계형 모델은 두 가지 간단한 개념을 기반으로 합니다.

  • tables
  • relations

관계형 모델은 1969 년으로 거슬러 올라가며 영국 컴퓨터 과학자 인 Edgar F. Codd의 작품입니다. 우리는 컴퓨터 프로그래머로서 새로운 반짝이는 것들에 대해 호기심을 가지고 사용했지만, 50 년 동안 컴퓨터에 관한 모든 것의 핵심이 될 수 있는 기술은 공부할 가치가 있습니다.


모델이 테이블을 기반으로 한다는 사실은 테이블을 사용하여 사물을 구성하는 데 익숙하기 때문에 사용하기가 매우 직관적입니다. 예를 들어 Excel 스프레드 시트를 생각해보십시오.


Postgres, Oracle, MySQL, SQLite 및 MS SQL Server 등의 SQL 기반 데이터베이스와 함께 ER 모델을 사용하여 분석 된 데이터는 관계형 모델을 사용하여 모델링 할 수 있으며 거의 ​​즉시 SQL 데이터베이스 형식으로 변환 할 수 있습니다. 관계형 모델의 실제 구현으로 간주되지만 다른 게시물에서 이에 대해 이야기하겠습니다.


이 글에서 나는 수학적 용어로 표현 된 것이 아니라 실제로 의미하는 바, 관계형 모델이 기반으로 하는 이론과 개념에 대해 이야기하고 싶습니다.


당신이 학생이라면, 내가 여기에 쓴 것이 교과서에 쓰여진 것이 아니라는 것을 알게 될 것입니다. 그러나 학습 자료에 표현 된 보다 공식적인 개념을 이해하기 위해 더 쉽게 읽을 수 있을 것입니다.


Tables 


관계형 모델에서 테이블은 항목의 모음입니다.


행과 열로 구성됩니다.


NameAge
Flavio36
Roger7
Syd6

Tuples 


테이블의 각 항목을 튜플이라고 합니다. 레코드 또는 행이라는 용어를 사용할 수도 있습니다.


튜플은 다음과 같이 테이블의 행을 나타냅니다.


Flavio36

Attributes 


속성은 튜플에서 하나의 단일 항목입니다.


이 예에서 :


Flavio36

"Flavio"는 속성입니다. 36은 또 다른 속성입니다.


튜플은 독특합니다 


테이블의 모든 튜플은 고유합니다.


관계형 모델에서는 중복 데이터를 가질 수 없습니다. 즉, 표의 모든 행이 하나 이상의 속성에서 달라야 합니다.


관계 키 


튜플을 고유하게 하는 것은 관계 키입니다.


키는 튜플을 고유하게 식별해야 하는 속성 중 하나입니다.


관계 키가 속성 집합 인 경우 중복되지 않아야 합니다. 즉, 키의 속성 중 하나를 제거하면 키가 고유성을 보장 할 수 없습니다.


둘 이상의 키를 확인할 수 있는 경우 해당 키 중 하나가 기본 키로 식별됩니다.


키 무결성 제약 


테이블에 있는 튜플의 키 속성은 null이 아니어야 하며 반복해서는 안됩니다.


열쇠가 주어지면 모호함 없이 특정 튜플 / 행을 가리킬 수 있어야 합니다.


도메인 제약 


모든 속성에는 보유 할 수 있는 값에 대한 규칙이 있습니다.


예를 들어 숫자를 저장하기로 결정하면 문자열을 저장할 수 없습니다. 그리고 이름에 10자를 초과하는 문자열을 저장하지 않기로 결정할 수도 있습니다.


이 유형을 호출 할 수도 있습니다.


참조 무결성 제약 


테이블에 보조 테이블에 대한 참조 또는 같은 테이블의 다른 튜플이 포함 된 경우 참조가 깨지지 않도록 하는 규칙을 따라야 합니다.


특히 다음과 같이 참조를 위반하지 않아야 합니다.

  • 다른 테이블에서 우리가 가리키는 레코드의 기본 키를 삭제하거나 편집하지 마십시오.
  • 존재하지 않는 키를 사용하여 다른 테이블을 가리키도록 새 레코드를 삽입하지 마십시오.
  • 다른 테이블에 새 키가 있는지 확인하지 않고 우리가 가리키는 레코드의 키를 변경하지 마십시오.


DBMS (Data Base Management System)는 참조 무결성을 구현하는 데 도움이 되는 조치를 구현합니다.



  • 트위터로 보내기
  • 페이스북으로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

페이지 정보

조회 22회 ]  작성일19-12-25 10:27

웹학교