Computer >> 컴퓨터 >  >> 프로그램 작성 >> SQL

E.F. Codd의 RDBMS에 대한 12가지 규칙


데이터베이스 관리 시스템 또는 DBMS는 기본적으로 데이터가 상호 연관되고 영구적인 경우 데이터에 액세스, 관리 및 업데이트하는 데 활용할 수 있는 포괄적인 응용 프로그램 세트로 구성됩니다. 모든 관리 시스템과 마찬가지로 DBMS의 목표는 정보를 데이터베이스에 쉽게 검색하고 저장할 수 있는 효율적이고 편리한 환경을 제공하는 것입니다. 데이터베이스는 많은 양의 정보를 저장하고 관리하는 데 사용된다는 것은 말할 필요도 없습니다.

이를 달성하려면 다음이 절대적으로 필요합니다.

  • 데이터 모델링 - 정보 저장 구조를 정의하는 것이 중요합니다.
  • 메커니즘 제공 - 처리된 데이터를 조작하고 파일 및 시스템 구조를 수정하려면 쿼리 처리 메커니즘을 제공하는 것이 중요합니다.
  • 충돌 복구 및 보안 - 불일치를 방지하고 데이터를 안전하게 보호하려면 충돌 복구 및 보안 메커니즘이 필요합니다.
  • 동시성 제어 - 시스템을 여러 사용자가 공유하는 경우 동시성 제어가 시급합니다.

에드가 F 코드 박사

세계적으로 '데이터베이스 관리 시스템의 아버지'로 알려진 Dr E.F.Codd는 실제로 13개에 달하는 12개의 규칙을 제안했습니다. 규칙은 0에서 12까지 번호가 지정됩니다. 그에 따르면 DBMS는 그의 12가지 규칙을 모두 준수하면 완전한 관계형입니다. 지금까지 11가지 규칙을 모두 준수하는 데이터베이스는 소수에 불과합니다. 그의 12가지 규칙은 'E.F.Codd의 12계명'으로 잘 알려져 있습니다. 그의 훌륭하고 획기적인 연구 논문인 '대규모 공유 데이터 은행을 위한 데이터의 관계형 모델' 전체는 눈을 즐겁게 해줍니다.

관계형 데이터베이스 관리 시스템

데이터베이스 관리 시스템의 전문 용어에는 암묵적인 규칙이 있습니다. E.F.Codd의 모든 규칙을 구현하는 데이터베이스가 두렵기 때문에 무언의 규칙이 주목을 받고 있습니다.

E.F. Codd의 RDBMS에 대한 12가지 규칙

  • 관리 시스템 또는 소프트웨어가 E.F.Codd에서 제안한 5-6가지 규칙 중 하나를 따르면 DBMS(데이터베이스 관리 시스템)에 해당합니다.
  • 관리 시스템 또는 소프트웨어가 E.F.Codd가 제안한 7-9가지 규칙 중 하나를 따르는 경우 준 관계형 데이터베이스 관리 시스템(semi-RDBMS)에 해당합니다.
  • 관리 시스템 또는 소프트웨어가 E.F. Codd가 제안한 9-12 규칙을 따르는 경우 완전한 관계형 데이터베이스 관리 시스템(RDBMS)에 해당합니다.

Edgar F Codd 박사의 12계명

E.F. Codd의 RDBMS에 대한 12가지 규칙 E.F Codd의 12가지 규칙에 대한 간략한 설명입니다.

규칙 0 - 기본 규칙

RDBMS로 제안되거나 RDBMS로 옹호되는 모든 관계형 데이터베이스 관리 시스템은 관계형 기능을 통해 저장된 데이터를 전체적으로 관리할 수 있어야 합니다.

규칙 1 - 정보 규칙

관계형 데이터베이스는 관계의 형태로 데이터를 저장해야 합니다. 테이블은 관계형 데이터베이스 관리 시스템의 관계입니다. 사용자 정의 데이터이든 메타 데이터이든, 값을 테이블 셀에 엔터티로 저장하는 것이 중요합니다.

규칙 2 - 액세스 보장 규칙

데이터에 논리적으로 액세스하기 위해 포인터를 사용하는 것은 엄격히 금지됩니다. 본질적으로 원자성인 모든 데이터 엔터티는 테이블 이름, 특정 행 값으로 표시되는 기본 키 및 속성 값으로 표시되는 열 이름의 올바른 조합을 사용하여 논리적으로 액세스해야 합니다.

규칙 3 - 체계적인 Null 값 지원 규칙

Null 값은 관계형 데이터베이스에서 완전히 지원됩니다. 그들은 일률적으로 '누락된 정보'로 간주되어야 합니다. Null 값은 모든 데이터 유형과 무관합니다. 공백이나 0 또는 빈 문자열로 오인되어서는 안 됩니다. Null 값은 '적용할 수 없는 데이터' 또는 '알 수 없는 정보'로 해석될 수도 있습니다.

규칙 4 - 활성 및 온라인 관계 카탈로그의 규칙

데이터베이스 관리 시스템 사전에서 '메타데이터'는 데이터베이스에 대한 데이터 또는 데이터에 대한 데이터입니다. 메타데이터를 저장하는 활성 온라인 카탈로그를 '데이터 사전'이라고 합니다. 소위 데이터 사전은 필요한 권한을 가진 저작된 사용자만 액세스할 수 있으며 데이터베이스 액세스에 사용되는 쿼리 언어는 데이터 사전의 데이터에 액세스하는 데 사용되어야 합니다.

규칙 5 - 종합 데이터 하위 언어의 규칙

강력한 단일 언어는 무결성 제약 조건, 보기, 데이터 조작, 트랜잭션 및 권한 부여를 정의할 수 있어야 합니다. 데이터베이스가 앞서 언급한 데이터베이스에 대한 액세스를 허용하면 이 규칙을 위반하는 것입니다.

규칙 6 - 보기 업데이트 규칙

보기는 해당 기본 테이블의 업데이트를 반영해야 하며 그 반대의 경우도 마찬가지입니다. 보기는 제한된 데이터를 표시하는 논리적 테이블입니다. 보기는 일반적으로 데이터를 읽을 수 있게 하지만 수정할 수는 없습니다. 보기는 데이터 추상화에 도움이 됩니다.

규칙 7 - 설정 수준의 삽입, 업데이트 및 삭제 규칙

데이터를 검색, 삽입, 업데이트 및 삭제하려면 단일 작업으로 충분해야 합니다.

규칙 8 - 물리적 데이터 독립성의 규칙

일괄 및 최종 사용자 작업은 물리적 스토리지 및 각각의 액세스 방법과 논리적으로 분리됩니다.

규칙 9 - 논리적 데이터 독립성의 규칙

일괄 및 최종 사용자는 데이터베이스 스키마를 다시 생성하거나 이를 기반으로 구축된 애플리케이션을 다시 생성하지 않고도 데이터베이스 스키마를 변경할 수 있습니다.

규칙 10 - 무결성 독립의 규칙

무결성 제약 조건을 사용할 수 있어야 하며 응용 프로그램이 아닌 데이터 사전에 메타데이터로 저장해야 합니다.

규칙 11 - 분배 독립의 규칙

관계형 시스템의 데이터 조작 언어는 물리적 데이터 저장에 대해 걱정해서는 안 되며 물리적 데이터가 중앙 집중화되거나 분산되어 있는 경우 변경이 필요하지 않아야 합니다.

규칙 12 - 전복 금지의 규칙

모든 행은 부과된 보안 및 무결성 제약 조건을 준수해야 합니다. 특별한 권한이 없습니다.

거의 모든 풀 스케일 DBMS는 RDMS입니다. Oracle은 11개 이상의 규칙을 구현하고 Sybase도 마찬가지입니다. SQL Server는 또한 11개 이상의 규칙을 구현하는 반면 FoxPro는 7개 이상의 규칙을 구현합니다.