sql-logo
SQL(Structured Query Language) 데이터 타입은 데이터베이스 테이블의 각 열(Column)이나 변수가 어떤 종류의 데이터를 저장할 수 있는지를 정의하는 것입니다. 각각의 데이터 타입은 특정한 종류의 데이터를 나타내고, 저장 및 처리하는 데 필요한 규칙을 제공합니다.
다양한 데이터 타입이 있으며, 주로 다음과 같은 카테고리로 나눌 수 있습니다.
각 데이터 타입은 특정 데이터베이스 관리 시스템(DBMS)에 종속적일 수 있으며, 특정 상황에 따라 선택되어야 합니다. 데이터 타입을 올바르게 선택하는 것은 데이터의 정확성과 성능에 영향을 미칠 수 있습니다.
정수형 데이터 타입은 정수를 저장하기 위한 데이터 타입으로, 일반적으로 다양한 범위의 정수 값을 나타냅니다. 아래는 주요한 정수형 데이터 타입과 각각의 특징에 대한 설명과 예제입니다.
데이터 타입 | 설명 | 범위 (부호 있는 정수) | 예제 |
---|---|---|---|
INT | 일반적인 정수형 데이터 타입 | -2,147,483,648 ~ 2,147,483,647 | CREATE TABLE 테이블명 (컬럼명 INT); |
BIGINT | 큰 정수형 데이터 타입 | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 | CREATE TABLE 테이블명 (컬럼명 BIGINT); |
SMALLINT | 작은 정수형 데이터 타입 | -32,768 ~ 32,767 | CREATE TABLE 테이블명 (컬럼명 SMALLINT); |
TINYINT | 아주 작은 정수형 데이터 타입 | 0 ~ 255 | CREATE TABLE 테이블명 (컬럼명 TINYINT); |
각각의 데이터 타입은 저장할 수 있는 값의 범위가 다르므로, 프로젝트의 요구 사항 및 데이터의 성격에 맞게 적절한 정수형 데이터 타입을 선택하는 것이 중요합니다.
소수형 데이터 타입은 부동 소수점 숫자를 저장하는 데 사용되며, 소수점 이하의 값을 포함할 수 있습니다. 아래는 주요한 소수형 데이터 타입과 각각의 특징에 대한 설명과 예제입니다.
데이터 타입 | 설명 | 예제 |
---|---|---|
FLOAT | 부동 소수점 숫자를 저장하는 일반적인 데이터 타입 | CREATE TABLE 테이블명 (컬럼명 FLOAT); |
DOUBLE | 더 큰 범위의 부동 소수점 숫자를 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 DOUBLE); |
DECIMAL(p, s) | 고정 소수점 숫자를 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 DECIMAL(5, 2)); |
이러한 소수형 데이터 타입은 실수 값을 저장할 때 사용되며, 프로젝트의 요구 사항과 정확도에 따라 적절한 데이터 타입을 선택해야 합니다.
문자열 데이터 타입은 텍스트 데이터를 저장하는 데 사용되며, 문자의 시퀀스를 나타냅니다. 아래는 주요한 문자열 데이터 타입과 각각의 특징에 대한 설명과 예제입니다.
데이터 타입 | 설명 | 예제 |
---|---|---|
VARCHAR(n) | 가변 길이 문자열을 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 VARCHAR(50)); |
CHAR(n) | 고정 길이 문자열을 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 CHAR(10)); |
TEXT | 긴 텍스트 데이터를 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 TEXT); |
문자열 데이터 타입은 주로 텍스트 정보를 저장하는 데 사용되며, 저장하려는 데이터의 성격에 따라 적절한 데이터 타입을 선택해야 합니다.
날짜 및 시간 데이터 타입은 날짜와 시간 정보를 저장하는 데 사용되며, 다양한 형식과 정밀도를 제공합니다. 아래는 주요한 날짜 및 시간 데이터 타입과 각각의 특징에 대한 설명과 예제입니다.
데이터 타입 | 설명 | 예제 |
---|---|---|
DATE | 날짜 정보를 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 DATE); |
TIME | 시간 정보를 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 TIME); |
DATETIME | 날짜와 시간 정보를 함께 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 DATETIME); |
날짜 및 시간 데이터 타입은 주로 시간 기반 이벤트를 기록하거나 특정 시간대의 작업을 추적할 때 사용됩니다. 프로젝트의 요구 사항 및 정확한 시간 정보의 필요성에 따라 적절한 데이터 타입을 선택해야 합니다.
불리언 데이터 타입은 참(True) 또는 거짓(False)의 두 가지 값 중 하나를 저장하는 데 사용됩니다. 아래는 주요한 불리언 데이터 타입에 대한 설명과 예제입니다.
데이터 타입 | 설명 | 예제 |
---|---|---|
BOOLEAN | 참 또는 거짓 값을 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 BOOLEAN); |
불리언 데이터 타입은 간단하고 명확한 참/거짓 상태를 저장하므로 주로 조건을 표현하거나 논리적인 판단이 필요한 경우에 사용됩니다.
이진 데이터 타입은 이진(Binary) 데이터 또는 바이너리 데이터를 저장하는 데 사용되며, 주로 이미지, 오디오, 비디오, 문서 파일 등과 같은 이진 형식의 데이터를 다룰 때 활용됩니다. 아래는 주요한 이진 데이터 타입에 대한 설명과 예제입니다.
데이터 타입 | 설명 | 예제 |
---|---|---|
BLOB | 이진 데이터를 저장하는 가장 일반적인 타입 | CREATE TABLE 테이블명 (컬럼명 BLOB); |
BINARY(n) | 고정 길이의 이진 데이터를 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 BINARY(100)); |
VARBINARY(n) | 가변 길이의 이진 데이터를 저장하는 타입 | CREATE TABLE 테이블명 (컬럼명 VARBINARY(255)); |
이진 데이터 타입은 주로 파일이나 멀티미디어 데이터와 같이 이진 형식으로 저장되는 데이터를 다룰 때 사용됩니다. 데이터의 크기 및 형식에 따라 적절한 이진 데이터 타입을 선택해야 합니다.
SQL 데이터 타입은 숫자, 문자열, 날짜/시간, 불리언, 이진 데이터 등을 저장하는 데 사용됩니다. 각각의 데이터 타입은 특정 유형의 데이터를 처리하고 정의합니다. 프로젝트에 따라 올바른 데이터 타입을 선택하는 것이 중요하며, 데이터베이스 시스템에 따라 일부 차이가 있을 수 있습니다.
테스트 시 의존성 주입(Dependency Injection)과 Mockito Spring 애플리케이션을 개발하다 보면, 테스트 코드에서 실제 빈(Bean)을 사용하지…
들어가며 스프링 기반 프로젝트에서 좋은 설계 구조와 테스트 전략은 소프트웨어 품질과 유지보수성에 직결됩니다. 최근 학습한…
Readable Code: 읽기 좋은 코드를 작성하는 사고법Practical Testing: 실용적인 테스트 가이드 강의와 함께한 인프런 워밍업 클럽…
Readable Code: 읽기 좋은 코드를 작성하는 사고법Practical Testing: 실용적인 테스트 가이드 강의와 함께한 인프런 워밍업 클럽…
들어가며 코드를 작성할 때 종종 "이 로직을 어떻게 단순하고 읽기 쉽게 표현할 수 있을까?" 고민하게…