데이터베이스 - 필드, 레코드 , 타입

이강용·2024년 7월 28일
0

CS

목록 보기
105/109

필드(Field)

  • 필드는 데이터베이스 테이블의 열(Column)
  • 테이블에서 특정 종류의 데이터를 저장하는 단위로 하나의 필드는 특정 속성(Attribute)에 해당
  • 예시 : 학생 테이블에서 이름, 학번, 전공 등이 필드
  • 특징
    • 속성 : 필드는 엔터티의 속성을 나타냄
    • 일관성 : 하나의 필드에는 같은 타입의 데이터가 저장
    • 제약 조건 : 필드는 고유성, 무결성, 기본 값 등의 제약 조건을 가질 수 있음
학번(Student ID)이름(Name)전공(Major)나이(Age)
필드필드필드필드

레코드(Record)

  • 레코드는 데이터베이스 테이블의 행(Row)
  • 하나의 레코드는 여러 필드로 구성되며 특정 엔터티나 객체에 대한 데이터를 저장
  • 튜플(Tuple)이라고도 함
  • 예시 : 학생 테이블에서 1, 김철수, 컴퓨터 공학, 20은 하나의 레코드
  • 특징
    • 엔터티 인스턴스 : 레코드는 엔터티의 한 인스턴스를 나타냄
    • 구성 요소 : 레코드는 여러 필드로 구성되며 각 필드는 레코드의 속성을 나타냄
학번(Student ID)이름(Name)전공(Major)나이(Age)
1김철수컴퓨터공학20
2이영희전자공학22
3박지훈기계공학21

MySQL 예시

CREATE TABLE book(
id INT NOT NULL AUTO_INCREMENT, title VARCHAR(255),
author_id INT,
publishing_year VARCHAR(255), genre VARCHAR(255),
created_at DATETIME, updated_at DATETIME,
PRIMARY KEY (id)
);

타입(Type)

  • 타입은 필드에 저장될 데이터의 형식(데이터 타입)을 의미
  • DB는 다양한 데이터 타입을 지원하며 각 필드는 특정 데이터 타입을 가짐
  • 예시 : INTEGER, VARCHAR, DATE, BOOLEAN 등이 데이터 타입임
  • 특징 :
    • 일관성 보장 : 데이터 타입을 지정함으로써 필드에 저장되는 데이터의 형식을 일관되게 유지함
    • 유효성 검사 : 데이터 타입을 통해 입력되는 데이터의 유효성을 검사할 수 있음
필드데이터 타입
학번(Student ID)INTEGER
이름(Name)VARCHAR(50)
전공(Major)VARCHAR(50)
나이(Age)INTEGER

MySQL 숫자 타입

TypeStorage (Bytes)Minimum Value SignedMinimum Value UnsignedMaximum Value SignedMaximum Value Unsigned
TINYINT1-1280127255
SMALLINT2-3276803276765535
MEDIUMINT3-83886080838860716777215
INT4-2147483648021474836474294967295
BIGINT8-2^6302^63 - 12^64 - 1

만약 unsigned를 쓰려고 한다면?

author_id INT UNSIGNED

MySQL 날짜 타입

TypeFormat범위저장 크기추가 설명
DATEYYYY-MM-DD1000-01-01 ~ 9999-12-313 bytes날짜만 저장
DATETIMEYYYY-MM-DD HH:MM:SS1000-01-01 00:00:00 ~ 9999-12-31 23:59:598 bytes날짜와 시간 저장
TIMESTAMPYYYY-MM-DD HH:MM:SS1970-01-01 00:00:01 UTC ~ 2038-01-19 03:14:07 UTC4 bytesUTC 기준으로 저장, 타임존 영향을 받음
profile
HW + SW = 1

0개의 댓글