테이블
정의
데이터베이스 테이블은 관계형 데이터베이스 관리 시스템(RDBMS)에서 데이터를 행(row)과 열(column) 형태로 구조화하여 저장하는 기본적인 논리적 구조이다. 각 열은 특정 데이터 형식(예: 정수, 문자, 날짜 등)을 정의하고, 각 행은 하나의 레코드(레코드)로서 해당 열에 정의된 값들을 포함한다.
주요 특징
| 구분 | 설명 |
|---|---|
| 스키마 | 테이블은 스키마에 의해 정의되며, 스키마는 열 이름, 데이터 유형, 제약 조건(예: 기본키, 외래키, NOT NULL 등)을 명시한다. |
| 기본키 | 테이블 내 각 행을 고유하게 식별하기 위해 하나 이상의 열을 기본키(primary key)로 지정한다. |
| 관계 | 외래키(foreign key)를 통해 다른 테이블과 관계를 설정함으로써 데이터 무결성을 유지한다. |
| 정규화 | 데이터 중복을 최소화하고 저장 효율을 높이기 위해 정규화 과정을 거쳐 테이블을 설계한다. |
| 연산 | SELECT, INSERT, UPDATE, DELETE와 같은 SQL(Data Manipulation Language) 문을 이용해 데이터를 조회·추가·수정·삭제한다. |
사용 예시 (SQL 표기법)
CREATE TABLE 직원 (
사원ID INT PRIMARY KEY,
이름 VARCHAR(50) NOT NULL,
부서ID INT,
입사일 DATE,
급여 DECIMAL(10,2),
CONSTRAINT FK_부서 FOREIGN KEY (부서ID) REFERENCES 부서(부서ID)
);
위 예시는 직원이라는 테이블을 정의하고, 사원ID를 기본키로 설정하며, 부서ID를 외래키로 지정하여 부서 테이블과 연관성을 갖는다.
어원
‘테이블(table)’은 영어 단어 table을 한글 음절로 표기한 것으로, 원래는 ‘표, 목록, 평평한 면’ 등을 의미한다. 데이터베이스 분야에서는 1970~1980년대 관계형 데이터베이스가 보편화되면서 영문 용어가 그대로 차용되어 사용된다.
관련 용어
- 관계형 데이터베이스(RDBMS): 테이블을 기본 단위로 데이터를 관리하는 데이터베이스 시스템.
- 스키마(schema): 데이터베이스 구조와 제약 조건을 정의한 메타데이터.
- 정규화(normalization): 데이터 중복을 최소화하고 무결성을 유지하기 위한 테이블 설계 기법.
- 인덱스(index): 테이블 검색 성능을 향상시키기 위해 특정 열에 생성하는 자료구조.
참고
데이터베이스 테이블에 대한 상세 내용은 대부분의 관계형 데이터베이스 교과서 및 공식 문서(예: Oracle Database Documentation, Microsoft SQL Server Documentation, PostgreSQL Manual)에서 확인할 수 있다.