DevKim

[DB] RDBMS - H2 생성,삽입,조회 본문

Spring Boot

[DB] RDBMS - H2 생성,삽입,조회

on_doing 2021. 4. 2. 20:29
728x90

RDBMS (Relation DataBase Management System)

- 관계형 정보 관리 시스템

 

1. MySQL

- 나중에 프로젝트 배포시

AWS RDS라는 서비스를 사용해 붙여볼 예정

 

2. H2

: In-memory DB

= 서버가 작동할 때만 돌아가는 데이터베이스

서버가 작동을 멈추면 데이터가 모두 삭제됨 -> 연습용에 좋음!

 

 

 

<H2 웹콘솔 작동시키기>

//application.properties

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

// 스프링에 H2라는 데이터베이스에 웹콘솔 보이게 해줘

// 스프링의 데이터 소스 데이터베이스로 H2를 사용할거야.

jdbc = java에서 DB에 접속할 수 있도록 하는 java API

 

 

localhost:8080

-> 8080번 방에 스프링이 띄워져있음

 

* 오류난다면 jdbc:h2:mem:testdb 입력.

 

 

1. 이름이 courses인 테이블 생성

CREATE TABLE IF NOT EXISTS courses ( //만약 courses라는 테이블이 없으면 테이블을 하나 만들어라
    id bigint(5) NOT NULL AUTO_INCREMENT, //gidint = Long , varchar = String
    title varchar(255) NOT NULL, //NOT NULL :어느 하나도 비어있으면 안된다!
    tutor varchar(255) NOT NULL, //3개의 열로 구성 
    PRIMARY KEY (id)
);

 

AUTO_INCREMENT

//만약 기존의 id가 1이었는데 그 다음꺼가 들어옴

-> 이때 자동으로 id로 2..3..4..이런식으로 자동으로 증가시켜서 부여해라

 

 

 PRIMARY KEY (id)
 // id라는 값은 행을 구분하게해주는, 데이터 하나하나를 구분하게 해주는 유일한 값임

 = id라는 애를 구분할 수 있는 녀석으로 삼겠다

 

2. 테이블에 데이터 삽입

INSERT INTO courses (title, tutor) VALUES 
    ('알고리즘', '김길동'), ('자료구조', '홍길동');

// courses에 ( , ) 이런 쌍으로 넣어줘라

2개가 뭔가 추가됐다!!

 

3. 삽입된 데이터 조회

SELECT * FROM courses;

 

우리가 명령을 내린 Java 명령어를 SQL로 번역해주는 녀석이, Spring Data JPA라는 녀석임!!

따라서 SQL을 짤 필요가 없음

728x90
Comments