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)을 사용하지…
들어가며 스프링 기반 프로젝트에서 좋은 설계 구조와 테스트 전략은 소프트웨어 품질과 유지보수성에 직결됩니다. 최근 학습한…
들어가며 코드를 작성할 때 종종 "이 로직을 어떻게 단순하고 읽기 쉽게 표현할 수 있을까?" 고민하게…
HTTP 상태코드란 무엇인가? HTTP 상태코드(HTTP Status Code)는 서버가 클라이언트의 요청을 처리한 결과를 수치화된 코드로 나타내는…
HTTP란 무엇인가? HTTP(Hypertext Transfer Protocol)는 웹에서 데이터를 주고받기 위해 사용하는 응용 계층 프로토콜입니다. 우리가 브라우저에서…