본문 바로가기
Study/DATABASE & ORM

[MySQL]MySQL 기본적인 명령어 모음

by DawIT 2020. 11. 26.
320x100

MySQL의 다양한 명령어들을 기억하기 위해 글을 쓴다.

기본적인 명령어들

SQL의 명령어는 크게 3가지로 나눌 수 있다.

각각

DDL (Data Definition Language)      : 데이터 정의 언어

DML (Data Manipulation Language) : 데이터 조작 언어

DCL (Data Control Language)         : 데이터 제어 언어

 

DDL 에서 가장 중요한 명령어는 CREATE 와 DROP 이라고 할 수 있다. 각각 테이블을 생성하고, 삭제하는 기능을 맡고 있다.

 

CREATE 명령어를 먼저 살펴 보자면,

CREATE TABLE 테이블명 (

    필드명 자료형 조건,

    필드명 자료형 조건,

    필드명 자료형 조건,

    ....

);

의 형태로 사용된다.

EX)

CREATE TABLE mytable (
	id int auto_increment primary key,
    pw varchar(20) not null,
    name varchar(10) not null
);

여기서 조건은 constraints 옵션에 해당하는데 내가 당장 기억해둘것은 이것들이다.

NOT NULL -> 비워 둘 수 없다
PRIMARY KEY -> 고유의 값을 가져야 한다 + 비워 둘 수 없다
AUTO_INCREMENT -> 레코드의 값이 중복되지 않고 자동으로 1씩 증가한다

 

DROP 은 간단하다.

DROP TABLE 테이블명;

 

그 다음 DML이 가장 많이 사용되는 명령어일 것이다.

DML에는 INSERT,UPDATE,DELETE,SELECT 가 있는데,

그중 INSERT는 테이블에 행(row)를 추가한다.

 

INESRT INTO 테이블명(필드,필드,...) VALUES('값','값',...);

상당히 직관적이고 외우기 쉬운 코드같다. 다음은 그 예시이다.

INSERT INTO mytable(pw,name) VALUES('1234','JDW');
INSERT INTO mytable(pw,name) VALUES('1111','PKJ');
INSERT INTO mytable(pw,name) VALUES('2222','JWQ');
INSERT INTO mytable(pw,name) VALUES('3333','OGJ');

UPDATE의 경우 이미 있는 행의 요소를 수정한다.

UPDATE 테이블명 SET 필드명='값',필드명='값',필드명='값' WHERE 필드명 LIKE '조건';

UPDATE는 보통 WHERE와 함께 쓰게 된다. WHERE문의 조건과 맞는 행을 수정하기 위해서이다.

EX)

UPDATE mytable SET name='EOQ' WHERE name LIKE 'JDW';
UPDATE mytable SET name='KEK',pw='0001' WHERE id LIKE 2;

 

가장 많이 쓰이는 것은 아마 SELECT 일 것이다 SELECT는 주어진 조건에 맞는 행을 불러와 출력한다.

근데 SELECT 문은 엄청 다양하게 사용할 수 있다. 다음은 MySQL Documentation에 나와있는 SELECT문의 사용법이다.

 

[]안의 것들은 생략이 가능하다.

 

그래서 자주 쓰는 형식으로만 예시를 만들어 보았다.

 

SELECT * FROM mytable;
SELECT name FROM mytable;
SELECT name,pw FROM mytable;
SELECT name,pw FROM mytable WHERE id = 1;

 

좀 많이 줄인 것 같지만, 상관없다. 모르면 검색하면 되니까!

 

DELETE문은 DROP문과 다르게 테이블에 있는 행을 삭제하는데 쓰인다.

 

DELETE FROM 테이블명 WHERE 필드명='조건';

 

 

DCL은 제어문인데, 아마 초보상태에서는 알지 못해도 상관없는 명령어들인 것 같다.

 

이렇게 기본적인 SQL의 명령어들을 알아보았다. 이제 Java코드 에서 이것들을 사용할 것이다.

댓글