본문 바로가기
스프링 (Spring)/DTO, Lombok, JPA, H2

H2 Database 기본설정

by 후닝훈 2021. 7. 13.
반응형

RDBMS

- RDBMS(Relational DataBase Management System)은 컴퓨터에 정보를 저장하고 관리하는 기술.

- RDB를 생성하고 수정하고 관리할 수 있는 소프트웨어이다.

- RDBMS는 Relational DataBase Management System의 약자로 관계형 모델을 기반으로 하는 DBMS 유형다.

- RDBMS의 테이블은 서로 연관되어 있어 일반 DBMS보다 효율적으로 데이터를 저장, 구성 및 관리할 수 있다.

- 정규화를 통해 데이터의 중복성을 최소화하며 트랜잭션을 수행하는 것이 더 쉽다.

- 데이터의 원자성, 일관성, 격리 및 내구성을 유지하며 데이터 무결성을 높인다.

 

RDBMS의 종류

- MySQL

- PostgreSQL

- Oracle Database

- H2 Database

 

H2 Database

- 대표적인 인메모리 Database

- 인메모리 DB란 서버가 작동하는 동안에만 내용을 저장하고, 서버가 작동을 멈추면 데이터가 모두 삭제되는 데이터베이스이다.

 

H2 Database 웹콘솔을 프로젝트에 추가

0. 프로젝트를 생성할 때 H2 Database를 추가 했었음.

1. src > main > resources > application.properties

 

2. applicatioin properties에 아래의 코드를 추가

spring.h2.console.enabled=true
spring.datasource.url=jdbc:h2:mem:testdb

 

3. localhost:8080/h2-console 에 접속

 

4. JDBC URL을 jdbc:h2:mem:testdb 로 변경해주자.

5. 연결

 

RDBMS 기본 SQL 개념

 

- 엑셀 파일 하나가 하나의 데이터 베이스라고 가정한다.

- 엑셀 시트 하나는 Table

- 엑셀의 행 하나는 데이터 이다.

- SQL 질의문은 DB 종류에 따라 조금씩 다를 수 있다.

 

Table 생성

CREATE TABLE IF NOT EXISTS courses (
    id bigint(5) NOT NULL AUTO_INCREMENT, 
    title varchar(255) NOT NULL,
    tutor varchar(255) NOT NULL,
    PRIMARY KEY (id)
);

1. Create Table If not exists : 존재하지 않는다면, 테이블을 생성.

2. NOT NULL : null값이 허용되지 않음. 값을 반드시 가지고 있어야함.

3. bigint = sql에서의 long 자료형.

4. auto_increment : 자동으로 숫자를 카운팅.

 

Insert

INSERT INTO courses (title, tutor) VALUES
    ('웹개발의 봄, Spring', '오상훈'), ('웹개발 종합반', '김수민');

 

데이터 검색

SELECT * FROM courses;

 

반응형

'스프링 (Spring) > DTO, Lombok, JPA, H2' 카테고리의 다른 글

CRUD  (0) 2021.07.13
DB 에 생성일자와 수정일자 필드 만들기  (0) 2021.07.13
JPA 사용하기  (0) 2021.07.13
JPA 개념, 기본설정  (0) 2021.07.13
개념정리  (0) 2021.07.11

댓글