Link Search Menu Expand Document

Database Data

Table of contents

  1. Classification of data (Bigdata)
    1. Structured Data
    2. Semi-structured Data
    3. Unstructured Data
  2. Database datas
    1. Database Datatype
    2. Data Integrity Constraints
      1. NOT NULL 제약 조건
      2. 기본키 제약 조건
      3. 외래 키 제약 조건

Classification of data (Bigdata)

정형 데이터와 비정형 데이터는 서로 배척관계가 아님

Structured Data

정형 데이터

▸ 구조화된 데이터, 즉 미리 정해진 구조(schema)에 따라 저장된 데이터

ex) 엑셀의 스프레드시트, 관계 데이터베이스의 테이블

Semi-structured Data

반정형 데이터

▸ 구조에 따라 저장된 데이터이지만, 데이터 내용 안에 구조에 대한 설명이 함께 존재

▸ 구조 파악하는 파싱(parsing) 과정 필요

▸ 보통 파일 형태로 저장

ex) HTML, XML, JSON 문서, 웹 로그, 센서 데이터

Unstructured Data

비정형 데이터

▸ 정해진 구조가 없이 저장된 데이터

ex) 소셜 데이터의 텍스트, 영상, 이미지, 워드, PDF 문서 등의 멀티미디어 데이터


Database datas

Database Datatype

데이터베이스에 저장할 수 있는 데이터는 타입을 가짐

→ 데이터를 삽입할 때 이를 유의해야 함

Data Integrity Constraints

데이터 무결성 제약 조건

칼럼에 들어가는 값을 제한하여 데이터의 정확성과 일관성을 보장해야 함

ex) 대학교에 학생 정보를 저장하는 테이블에서 그 학교 학생이라면 무조건 학번을 가져야 하고, 한 학생이 가지는 유일한 값이 되어야 함

NOT NULL 제약 조건

▸ NULL = 어느 값도 정해지지 않은 불확실한 값

테이블에 무조건 입력해야 하는 필수 입력 컬럼을 NOT NULL제약 조건으로 걸어줌

syntax

NOT NULL

ex) CREATE TABLE emp(
    ename VARCHAR2(20) NOT NULL,
    empno NUMBER(5) NOT NULL
);

-- 테이블 생성 시 NOT NULL을 입력해 제약 조건을 걸 수 있음

기본키 제약 조건

칼럼이 동일한 값을 가질 수 없도록 제약 조건을 걸어주는 것

syntax

PRIMARY KEY

CREATE TABLE emp(
    snum NUMBER(5) PRIMARY KEY
);

-- 테이블 생성 시 기본키에 해당하는 컬럼명 뒤에 primary key를 입력

외래 키 제약 조건

관계형 데이터베이스는 데이터가 중복되는 것을 막기 위해 정보를 여러 테이블에 나눠 저장해 두었다가 원하는 정보를 얻기 위해 여러 테이블을 연결하여 사용

특정 테이블의 칼럼이 다른 테이블의 칼럼을 참조하게 되는 경우가 생김, 이러한 칼럼을 외래키라고 함

예시

예를 들어 회사 사원 테이블에는 사원에 대한 정보와 부서번호/부서명 칼럼이 존재할 것입니다. 하지만 부서에 대한 정보는 담고 있지 않습니다. 부서에 대한 정보는 부서테이블에 정보가 담겨 있겠죠.

그렇다면 사원 테이블의 부서번호와 부서 테이블의 부서번호가 서로 연결이 된다는 것을 알 수 있습니다.

만약 사원 테이블의 부서번호와 부서 테이블의 부서번호가 일치되는 것이 없다면 부서 정보를 얻어오는데 문제가 발생합니다.

그래서 서로 참조할 수 있도록 제약을 걸어 둔 것이 외래키 제약 조건


이 웹사이트는 jekyll로 제작되었습니다. Patrick Marsceill, Distributed by an MIT license.