데이터베이스 속성
데이터베이스 속성
데이터베이스에서 "속성"은 데이터베이스 테이블의 열(column)을 나타내는 용어입니다.
속성은 테이블 내에서 각각의 열에 저장된 데이터의 유형과 의미를 정의하는데 사용됩니다.
속성 종류
이름 (Name):
속성은 일반적으로 이름을 가지고 있으며,
이 이름은 해당 열이 어떤 종류의 데이터를 저장하는지 나타냅니다.
예를 들어, "고객 이름"이라는 이름의 속성은 고객의 이름을 저장하는 열을 나타냅니다.
데이터 유형 (Data Type):
각 속성은 특정한 데이터 유형을 가지고 있으며,
이것은 해당 열이 어떤 종류의 데이터를 저장하는지를 나타냅니다.
예를 들어, 숫자, 문자열, 날짜, 불리언 값 등의 데이터 유형이 있습니다.
길이 (Length):
문자열과 같은 특정 데이터 유형의 경우,
속성은 얼마나 많은 문자를 저장할 수 있는지를 나타내는 길이 제한을 가질 수 있습니다.
기본값 (Default Value):
속성에는 기본값을 설정할 수 있으며,
데이터가 삽입되지 않았을 때 해당 속성에 할당된 기본값이 사용됩니다.
제약 조건 (Constraints):
속성은 제약 조건을 가질 수 있으며, 이는 해당 속성에 저장될 수 있는 데이터의 제한 사항을 정의합니다.
예를 들어, 고유(unique) 제약 조건은 해당 속성에 중복된 값을 허용하지 않습니다.
외래 키 (Foreign Key):
관계형 데이터베이스에서는 속성을 사용하여 다른 테이블과의 관계를 정의할 수 있습니다.
이러한 관계를 위해 속성은 외래 키로 지정될 수 있으며, 다른 테이블의 기본 키와 연결됩니다.
인덱스 (Index):
속성에 대한 인덱스를 생성할 수 있습니다.
인덱스는 데이터를 검색 및 정렬하기 위해 사용되며 데이터베이스의 성능을 향상시킬 수 있습니다.
고객 정보를 저장하는 데이터베이스 테이블의 경우 다음과 같은 속성이 있을 수 있습니다.
고객 ID (CustomerID):
숫자 형식, 기본 키, 자동 증가
이름 (Name):
문자열 형식, 최대 길이 50자
이메일 주소 (Email):
문자열 형식, 최대 길이 100자, 고유(unique) 제약 조건
가입일 (JoinDate):
날짜 형식
회원 유형 (MembershipType):
문자열 형식
이러한 속성들은 데이터베이스에서 고객 정보를 구조화하고 저장하는 데 사용됩니다.
각 속성은 해당 데이터베이스 테이블의 열을 정의하며,
데이터의 일관성과 무결성을 보장하는 데 중요한 역할을 합니다.
컬럼의 종류
정수 (Integer):
정수 컬럼은 정수 값을 저장하는 데 사용됩니다.
일반적인 정수 유형에는 INT(정수), TINYINT(작은 정수), SMALLINT(작은 정수),
BIGINT(큰 정수) 등이 있습니다.
실수 (Floating-Point):
실수 컬럼은 부동 소수점 숫자를 저장하는 데 사용됩니다.
일반적으로 FLOAT(단정도 부동 소수점)와 DOUBLE(배정도 부동 소수점)와 같은 유형이 있습니다.
예를 들어, 가격이나 특정 위치의 좌표를 저장하는 데 사용됩니다.
문자열 (String):
문자열 컬럼은 텍스트 데이터를 저장하는 데 사용됩니다.
VARCHAR(가변 길이 문자열), CHAR(고정 길이 문자열), TEXT(긴 텍스트)와 같은 문자열
유형이 있습니다.
날짜 및 시간 (Date and Time):
날짜 및 시간 컬럼은 날짜, 시간 또는 날짜와 시간 정보를 저장하는 데 사용됩니다.
DATE(날짜), TIME(시간), DATETIME(날짜와 시간), TIMESTAMP(타임스탬프) 등이 있습니다.
불리언 (Boolean):
불리언 컬럼은 참(True) 또는 거짓(False) 값을 저장하는 데 사용됩니다.
대부분의 데이터베이스 시스템에서는 BOOLEAN 또는 BIT 유형을 제공합니다.
이진 데이터 (Binary):
이진 데이터 컬럼은 이진 파일 또는 이미지와 같은 이진 데이터를 저장하는 데 사용됩니다.
BLOB(Binary Large Object) 및 VARBINARY(가변 길이 이진 데이터)와 같은 유형이 있습니다.
열거형 (Enum):
열거형 컬럼은 미리 정의된 값 집합 중 하나를 저장하는 데 사용됩니다.
JSON/XML: Data Type:
몇몇 데이터베이스 시스템은 JSON 또는 XML 형식의 데이터를 저장할 수 있는 데이터 유형을 지원합니다.
이러한 형식은 복잡한 데이터 구조를 저장하는 데 유용합니다.
기타 유형:
데이터베이스 시스템에 따라 다양한 특수 데이터 유형이 제공될 수 있으며,
이는 해당 시스템의 기능과 요구 사항에 따라 다릅니다.
각 데이터베이스 관리 시스템(DBMS)은 자체적인 데이터 유형을 지원하며,
이러한 유형은 데이터의 형태와 사용 사례에 따라 선택됩니다.
따라서 데이터 모델과 DBMS에 따라 사용 가능한 컬럼 유형이 다를 수 있습니다.
'목차훔치기 > 면접을 위한 CS 전공지식 노트' 카테고리의 다른 글
필드와 레코드(면접을 위한 CS 전공지식 노트) (0) | 2023.10.01 |
---|---|
데이터베이스 도메인(면접을 위한 CS 전공지식 노트) (0) | 2023.09.30 |
릴레이션(면접을 위한 CS 전공지식 노트) (0) | 2023.09.28 |
엔터티(면접을 위한 CS 전공지식 노트) (0) | 2023.09.27 |
데이터베이스의 기본(면접을 위한 CS 전공지식 노트) (0) | 2023.09.26 |