본문 바로가기

관계형 데이터베이스(Relational Database)3

정규화(Normalization) 정규화 이론(Normalization Theory) 관계형 데이터베이스(Relational Database)의 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스 관계형 모델을 기반으로 한 관계형 데이터베이스지만, 사실 정규화 이론은 관계형 모델의 일부라고 볼 순 없다. 정규화가 되지 않은 릴레이션이라도 정규화가 된 릴레이션처럼 똑같이 SQL을 이용해 조작할 수 있기 때문이다. 그러나 정규화되어 있지 않은 릴레이션이 취급하기 쉽다는 의미는 아니다. 모순(Contradiction) 데이터의 논리적인 불일치가 일어난 상태 변칙(Anomalies) 모순(Contradiction)이 발생한 상태 변칙이 생기는 경우 book 이란 릴레이션은 책의 이름과 책의 저자, 책의 가격, 출판사 등의 정보가 모인 릴레이.. 2023. 5. 11.
릴레이션(Relation)과 집합 관계형 데이터베이스는 릴레이션으로 데이터를 표현한다. 우리는 SQL(Structured Query Language)을 이용해 테이블을 조작한다. CREATE TABLE student ( ID INT ); ALTER TABLE student ADD PRIMARY KEY ID; DROP TABLE student; 관계형 데이터베이스는 일련의 데이터의 관계(Relation, 릴레이션)를 정의한 관계 그 자체로 데이터를 관리한다. 우리는 그 관계에 질의(Query)를 던져 다양한 연산을 수행한다. 관계형 모델(relational model)은 철저히 술어 논리와 집합론에 기반을 둔 데이터베이스 모델이다. 즉 우리가 성능 좋은 SQL문을 짜기 위해선 우리의 쿼리로 이루어지는 연산이 릴레이션에선 어떤 집합 연산으로.. 2023. 5. 10.
관계형 모델(Relational Model) 관계형 모델(relational model)은 술어 논리와 집합론에 기반을 둔 일종의 데이터베이스 모델이다. 관계형 데이터베이스(Relational Database)는 관계형 모델을 바탕으로 구현되었다. 관계형 데이터베이스 관리 시스템(relational database management system)은 관계형 데이터베이스를 편리하게 관리하기 위해 만들어졌다. SQL(Structured Query Language)은 관계형 데이터베이스 관리 시스템의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다. 데이터베이스 설계, 데이터베이스 정규화, SQL 공부, 쿼리 튜닝에서 많은 사람들이 고생하는 이유이다. 관계형 데이터베이스는 철저히 술어 논리와 집합론의 세상으로만 이해할 수 있지만, 우리는 .. 2023. 5. 10.