본문 바로가기
Database/MYSQL

MYSQL - DML 명령어1(Data Manipulation Language), DCL

by 반화넬 2023. 7. 27.
반응형

안녕하세요.

이번에는 MYSQL - DML 명령어1(Data Manipulation Language) 종류에 대해서 알아볼건데요. 전체적으로 전부 알아보면 좋겠지만 그래도 필요한 부부분 위주로 알아보도록 하겠습니다. 

MYSQL DML DCL DDL SELECT INSERT UPDATE DELETE

 
 

SELECT  기본  사용법

 

# 기본 선택 명령어(table_name 테이블에서 모두 가져오기)
SELECT * FROM [table_name];
 
# WHERE문 포함 선택 명령어(table_name 테이블에서 name이 '반화넬'인 값 가져오기
SELECT * FROM [table_name] WHERE name='반화넬'; 
 
SELECT * FROM [table_name] WHERE name LIKE '반화넬';
 
# 애매한 것도 모두 선택하는 명령어(table_name 테이블에서 name에 '반화넬'가 들어가는 것 모두 가져오기)
SELECT * FROM [table_name] WHERE name LIKE '%깜이%';
 
# 선택 후 name 컬럼으로 오름차순 정렬하는 명령어(ASC 없어도 가능)
SELECT * FROM [table_name] ORDER BY name;
SELECT * FROM [table_name] ORDER BY name ASC;
 
# 선택 후 name 컬럼으로 내림차순 정렬하는 명령어
SELECT * FROM [table_name] ORDER BY name DESC;
 
# 선택 후 여러 컬럼으로 정렬하는 명령어(우선순위 name > email)
SELECT * FROM [table_name] ORDER BY name, email;

MYSQL DML DCL DDL SELECT INSERT UPDATE DELETE

 
 

INSERT 명령어

DROP TABLE member_basic;
CREATE TABLE member_basic (auto_no INT AUTO_INCREMENT COMMENT '자동값',
  mem_name VARCHAR(255) NOT NULL COMMENT '회원이름',
  mem_email VARCHAR(255) NOT NULL COMMENT '회원메일',
  PRIMARY KEY (auto_no)
) CHARSET=utf8mb4 COMMENT='회원';

# AUTO_INCREMENT 자동 증가
# 테이블에 Value 등록
INSERT INTO member_basic (mem_name, mem_email )VALUES ('test','test@naver.com');

 
 

UPDATE 명령어

DROP TABLE member_basic;
CREATE TABLE member_basic (auto_no INT AUTO_INCREMENT COMMENT '자동값',
  mem_name VARCHAR(255) NOT NULL COMMENT '회원이름',
  mem_email VARCHAR(255) NOT NULL COMMENT '회원메일',
  PRIMARY KEY (auto_no)
) CHARSET=utf8mb4 COMMENT='회원';

 

# 특정 Row 변경
UPDATE member_basic SET mem_name='반화넬' WHERE auto_no = 1;
UPDATE member_basic SET mem_name='반화넬';

 

 
 

DELETE 명령어

DROP TABLE member_basic;
CREATE TABLE member_basic (auto_no INT AUTO_INCREMENT COMMENT '자동값',
  mem_name VARCHAR(255) NOT NULL COMMENT '회원이름',
  mem_email VARCHAR(255) NOT NULL COMMENT '회원메일',
  PRIMARY KEY (auto_no)
) CHARSET=utf8mb4 COMMENT='회원';


DELETE FROM member_basic WHERE auto_no = 1;
DELETE FROM member_basic;

 

 

 
 

DCL(Data Control Language)

 

GRANT : 사용자 권한을 설정하는 명령어입니다.

REVOKE : GRANT 명령어로 적용한 권한을 해제하는 명령어입니다.

COMMIT;

ROLLBACK;

 

# TRUCATE 와 DROP 사용시 DROP 만 롤백됨

정리

기본적으로 사용하는 쿼리의 경우 SELECT, INSERT, UPDATE, DELETE  쿼리를 가장 많이 사용하게 됩니다. 하지만 여기서 가장 중요한건 PK, INDEX가 중요함을 DATA가 늘어날수록 느끼시게 될건데요. 설계하실때 WHERE 절에 있는 조건에 맞춰서 단일 INDEX나 듀얼 이상의 INDEX 구성으로 설정 하시면 될것 같습니다. 

 

빠른 속도록 안정적인 서비스를 위한 DB 구성 잘하시길 바랍니다.

 

감사합니다.

반응형