[Spring] CREATE, INSERT, DELETE using SQL

HOJUN·2024년 6월 11일

Backend - Spring

목록 보기
17/34

CREATE

CREATE는 말그대로 생성이다.
테이블을 생성할 때 사용되는 명령어이다.

CREATE TABLE `테이블 이름` (
`컬럼 이름` Datetype option DEFAULT Default/Expression COMMENT '컬럼 정보',
...
KEY Option(`키`)
);

등의 코드로 입력 가능하다.
주의할 것은 테이블과 컬럼, 로우는 작은 따옴표 ( ' )가 아니라 ESC 밑에 있는 그것, ( ` )으로 사용한다.
(하지만 DEFAULT나 COMMENT의 문자열은 작은 따옴표를 사용한다..)

컬럼이나 로우, 키를 지정할 때만 백 쿼트( ` )를 사용한다.

여담이지만 작은 따옴표를 Apostrophe, 큰 따옴표를 Quotation mark라고 하고 물결표의 따옴표를 Grave라고 하는데
나는 Single Quote, Double Quote, Back Quote라고 알고 있다,, 뭐가 맞는 걸까

INSERT

INSERT는 데이터를 생성한다.
생성된 테이블에 데이터를 추가할 때 사용되는 명령어이다.

INSERT INTO `테이블 이름`
(
	`컬럼1 이름`,
    `컬럼2 이름`,
    ...
)
VALUES
(
	컬럼1 데이터값(int),
    '컬럼2 데이터값'(varchar),
    ...
)

데이터의 속성에 따라서 입력하는데, 만약 컬럼이 NOT NULL일 경우 적지 않으면 데이터가 생성되지 않는다.
반대로 NOT NULL이 아닌 key는 비우고 등록할 수 있는데, 정해놓은 DEFAULT값으로 지정된다.

UPDATE

테이블의 내용을 변경할 때 사용한다.

UPDATE `테이블 이름` SET
[key] = [value],
[key] = ['value'],
...
WHERE
[조건절]
and
[조건절]
...

내가 원하는 데이터를 찾기 위해서 바꾸기를 원하는 값과 조건절을 잘 이용해야한다.

DELETE

데이터를 삭제한다.

DELETE FROM `테이블 이름`
WHERE
[조건절],
...

변경과 같은 원리로 삭제하기 원하는 값의 조건을 잘 입력해야한다.

TRUNCATE

TRUNCATE는 테이블의 컬럼 속성은 유지한채로 테이블을 모두 비우는 clean기능을 가진다.

TRUNCATE `테이블 이름`

DROP

DROP은 테이블 자체를 삭제하는 기능을 한다. 테이블의 데이터를 모두 없앤다.

DROP `테이블 이름`

위 내용 모두는 workbench에서 GUI를 통해 마우스 클릭으로 쉽게 이루어질 수 있다.

쿼리문을 작성하기 힘들거나 모르겠다면 이를 이용해도 된다.
테이블 생성을 예로 들어보자

테이블 이름과 문자열의 인코딩 방식(생략가능)을 지정한다.
컬럼의 이름과 데이터 타입을 지정해주고 해당 컬럼의 옵션을 체크해주면

`컬럼 이름` Datetype option DEFAULT Default COMMENT Expression, 와 같은 기능을 한다.

id에 PK, NN, AI은 각각 PRIMARY KEY, NOT NULL, AUTO_INCREAMENT역할을 한다.
Default/Expression에 값이나 식을 입력하면 데이터를 생성할 때 값을 넣지 않을 경우 자동으로 입력된다.

하단의 COMMENT란에 컬럼 정보를 입력하면 각 컬럼마다 정보를 따로 입력할 수 있다.

0개의 댓글