[sql] 제약 조건과 인덱스

SQL에서 제약 조건과 인덱스는 데이터베이스 테이블의 무결성과 성능을 유지하기 위해 사용됩니다. 제약 조건은 테이블에 적용되는 규칙이며, 인덱스는 데이터에 대한 효율적인 접근을 가능하게 합니다.

제약 조건

제약 조건은 테이블에 삽입, 갱신, 삭제 작업을 수행할 때 적용되는 규칙입니다. 주요한 제약 조건으로는 다음과 같은 것들이 있습니다:

이러한 제약 조건은 데이터의 무결성을 보장하고, 잘못된 데이터의 삽입이나 갱신을 방지하는 역할을 합니다.

인덱스

인덱스는 테이블의 데이터에 대한 빠른 접근을 가능하게 합니다. 데이터베이스는 인덱스를 사용하여 테이블을 검색하고, 데이터가 저장되는 물리적인 위치를 파악함으로써 검색 속도를 향상시킵니다. 인덱스를 사용하면 데이터베이스 엔진은 인덱스를 탐색하고, 필요한 데이터를 찾기 위해 테이블의 모든 레코드를 스캔하는 것보다 더 빠르게 데이터를 가져올 수 있습니다.

일반적으로 테이블의 Primary Key 컬럼에는 자동으로 인덱스가 생성되며, 필요에 따라 다른 컬럼에도 인덱스를 생성할 수 있습니다. 인덱스는 데이터의 유니크한 값을 키로 사용하여 생성되며, 이를 통해 데이터 검색 및 정렬이 더욱 빠르게 이루어집니다.

하지만 인덱스는 메모리와 디스크 공간을 차지하므로, 필요한 인덱스만 생성하는 것이 중요합니다. 너무 많은 인덱스를 생성할 경우 데이터베이스 성능이 저하될 수 있습니다.


참고 자료