메모장

[멘토 씨리즈] 부록 04. 데이터 저장 본문

JAVA/[멘토씨리즈]

[멘토 씨리즈] 부록 04. 데이터 저장

Itchild 2024. 4. 9. 13:30
728x90
반응형

 

데이터베이스에서 데이터를 저장하기 위해서는 원하는 데이터를 저장할 테이블을 만들어야 합니다.

앞에서 설명한 DDL 과 DML을 사용해 테이블을 만들고 데이터를 수집, 수정, 삭제, 출력등을 제어합니다.

 

1. 데이터 테이블

 

데이터베이스는 데이터를 저장하는 방법으로 테이블 형식을 사용합니다. 데이터베이스가 데이터를 저장하는 저장소라면, 테이블은 데이터를 어떤 형식으로 저장할지 결정합니다. 여기서 말하는 테이블은 우리가 흔히 문서를 작성할 때 사용하는 표 형식과 같습니다. 하나의 문서에 여러개의 표를 작성할 수 있는 것처럼 데이터베이스도 여러 개의 테이블이 존재할 수 있습니다.

 
학번
이름
나이
학년
성별
20211001
홍길동
17
1
남자
20211002
김영희
18
2
여자

 

위와 같이 학생테이블이 있다고 가정하면 테이블을 구성하는 기본속성을 가진 데이터를 우리는 Column(칼럼)이라고 부릅니다(굵은글씨). 그리고 Column에 해당하는 데이터를 가지고 있는 하나의 데이터 정보를 Record 또는 row Data라고 합니다.

 

2. 자료형

 

데이터베이스도 자바의 변수처럼 데이터들을 저장하기 위한 여러가지 자료형이 존재합니다.

----- MariaDB 기준 -----

 

  • 문자형 데이터 타입
종류
역할
CHAR(크기)
고정길이 데이터 타입(최대 255byte)
입력된 데이터의 길이와 상관없이 지정된 크기만큼 공간 생성
VARCHAR(크기)
가변 길이 데이터 타입(최대 255byte)
지정된 길이보다 작은 데이터가 입력될 경우, 입력된 데이터 크기만큼만 저장
TEXT(크기)
문자열 데이터 타입(최대 65535byte)

 

  • 숫자형 데이터 타입
종류
역할
INT(길이)
정수 타입 데이터
BIGINT(길이)
정수 타입 데이터
길이의 제약이 거의 없음
FLOAT(길이,소수자릿수)
실수 타입 데이터
근사값을 나타냄
DOUBLE(길이,소수자릿수)
실수 타입 데이터
근사값을 나타냄
DECIMAL(길이,소수자릿수)
실수 타입 데이터

 

  • 날짜형 데이터 타입
종류
역할
DATE
날짜표현
TIME
시간표현
DATETIME
날짜와 시간 표현
TIMESTAMP
날짜를 숫자 형태로 저장하고 표현

 

3. 데이터베이스의 key

 

< 기본키 primary key >

  • 중복되지 않은 유일한 데이터를 가진 칼럼 입니다
  • 데이터를 식별 할 수 있어야 합니다
  • 기본키는 하나 또는 여러개의 칼럼을 묶어서 지정 할 수 있습니다.

 

< 외래키 foreign key >

  • 다른 테이블의 기본키
  • 연관 관계가 있는 칼럼
  • 외래키가 지정된 테이블의 데이터를 삭제햐야 기본 테이블 데이터를 삭제 할 수 있습니다

- 외래키를 지정한 테이블은 해당키를 기본키로 하는 테이블에 종속된다.

- 메인 데이터를 지우기 위해서는 종속 데이터를 먼저 삭제 해야 합니다.

 

728x90
반응형