[DB] SQL 문법 정리 (MySQL 기준)

MihyunCho·2021년 5월 20일
0
post-thumbnail

SQL

Structured Query Language 은 데이터베이스 언어의 기준으로 주로 관계형 데이터베이스에서 사용된다.
SQL 은 구조화된 쿼리 언어이다.

따라서 SQL 이란 데이터베이스 용 프로그래밍 언어이며, 한 마디로 데이터베이스에 쿼리를 보내 원하는 데이터만을 가져올 수 있게 해준다.


SQL 문법 정리

DDL (Data Definition Language)

테이블이나 관계의 구조를 생성하는 데 사용

  • CREATE (데이터베이스/테이블 생성)
CREATE TABLE (if not exists) [테이블명] ;

ex)
CREATE TABLE user (
  id int PRIMARY KEY AUTO_INCREMENT,
  name varchar(255),
  email varchar(255)
);
  • ALTER (테이블 수정)
ALTER TABLE [테이블명] ...
  • DROP (데이터베이스/테이블 삭제)
DROP TABLE (if exists) [테이블명] ; 

DML (Data Manipulation Language)

데이터를 조작하기 위해 사용하는 언어

  • INSERT (데이터 생성)
INSERT INTO [테이블명] (컬럼명,...) VALUES(입력할 데이터,...);
  • UPDATE (데이터 수정)
UPDATE [테이블명] SET (컬럼명) = (수정데이터) WHERE <조건>;
  • DELETE (데이터 삭제)
DELETE FROM [테이블명] WHERE <조건>;
  • SELECT (데이터 조회)
SELECT (컬럼명,... or *) FROM [테이블명];

DCL (Data Control Language)

DBMS를 제어하기 위한 언어

  • GRANT(권한 할당)
시스템 권한
GRANT 권한1, 권한2 TO 사용자계정

객체 권한
GRANT 권한1, 권한2 ON 객체명 TO 사용자계정
  • REVOKE(권한 해제)
시스템 권한
REVOKE 권한1, 권한2 FROM 사용자계정

객체 권한
REVOKE 권한1, 권한2 ON 객체명 FROM 사용자계정

TCL (Transaction Control Language)

트랜잭션을 하나로 묶어 처리하는 작업 단위

  • COMMIT (DML 영구히 저장)
COMMIT;
  • ROLLBACK (DML 문장 취소)
ROLLBACK TO [저장 포인트명];


예전에 사용했었던 window용 workbench와 너무 다르게 생겨서 당황했다.
window용은 엄청 디자인이 도태되어 보였던걸로 기억하는데 맥용은 고급지다...
사용법도 조금 같은듯 달라서 많이 만져봐야 될 것 같다.

profile
Sic Parvis Magna 🧩

0개의 댓글