Contents
1. 데이터 베이스
2. 데이터 베이스 개체
테이블(table)
뷰(view)
인덱스(index)
1. 데이터 베이스 기본 개념
- 데이터 베이스(DB, DataBase): 데이터가 모여있는 집합.
- DBMS(DataBase Management System): 데이터의 집합을 관리하고 운영하는 시스템.
- RDBMS(Relational DBMS): 관계형 DBMS는 테이블(table) 단위로 구성되며, 테이블은 데이터 특성을 나타내는 열(column)과 데이터 레코드를 나태나는 행(row)으로 이루어짐.
- SQL(Structured Query Language): DBMS에서 데이터를 구축, 관리, 활용하기 위해 사용되는 언어
- ANSI SQL: DBMS(Oracle, My-SQL, DB2 등등) 별로 각기 다른 SQL을 사용하므로, 미국 표준 협회(American National Standards Institute)에서 표준화 한 SQL
2. 데이터 베이스 개체
데이터베이스 개체는 데이터베이스 내에서 정보를 구조화하고 저장하는 데 사용되는 핵심 요소임.
- 테이블(table): 테이블은 데이터와 행, 열로 구성됨.
CREATE TABLE Employees (
EmployeeID INT PRIMARY KEY,
FirstName VARCHAR(50),
LastName VARCHAR(50),
Birthdate DATE,
DepartmentID INT,
EmploymentStatus INT,
FOREIGN KEY (DepartmentID) REFERENCES Departments(DepartmentID)
);
- Employees 테이블을 생성하는 SQL문은 다음과 같음.
- EmployeeID INT PRIMARY KEY에서 EmployeeID는 열 이름, INT는 열의 데이터 타입(정수형), PRIMARY KEY는 해당 열이 Employees 테이블의 인덱스 열로 사용된다는 뜻.
- 데이터 타입을 표시하는 INT, VARCHAR(), DATE 등은 추후 포스팅에서 다룸.
- FOREIGN KEY는 외부 테이블과 참조하는 열을 의미함 (Employees 테이블은 Department 테이블과 DepartmentID 열로 연결됨).
- 뷰(view): 뷰는 원본 테이블에서 열 및 행을 기반으로 만들어진 가상의 테이블임.
- 이미 존재하는 Employees 테이블에서, 현재 일하고 있는(EmploymentStatus가 Active) 테이터들의 가상의 뷰를 생성함.
CREATE VIEW ActiveEmployees AS
SELECT * FROM Employees WHERE EmploymentStatus = 'Active';
- 인덱스(index): 인덱스는 테이블의 특정 열에 대한 검색 성능을 향상시키기 위해 사용됨.
- Employees 테이블의 LastName 열을 인덱스로 설정함.
- 단, PRIMARY KEY는 바뀌지 않음.
- 유니크 값으로 이루어진 열이라면, CREATE UNIQUE INDEX 인덱스 명 ON 테이블(열);
CREATE INDEX idx_LastName ON Employees(LastName);
반응형
'SQL' 카테고리의 다른 글
SQL 시간 데이터 다루기 (1) | 2024.01.14 |
---|---|
SQL GROUP BY 절 이해하기: 주요 특징 (1) | 2023.12.21 |
SQL 데이터 형식 알아보기(숫자형, 문자형, 날짜형) (0) | 2023.12.15 |
SQL 기본 문법 알아보기 (0) | 2023.12.14 |