1-3 SQL (Structured Query Language) 살펴보기
1. SQL이란
데이터베이스에서 사용되는 생성, 삽입, 조회 명령문을 SQL (Structured Query Language)이라고 합니다.
1. SQL의 종류란?
- DDL (Data Definition Language)
- DML (Data Manipulation Language)
- DCL (Data Control Language
- TCL (Transaction Control Language)
1) DDL (Data Definition Language)
DDL은 데이터를 정의할 때 사용하는 언어로
테이블이나 데이터베이스를 생성, 수정, 삭제와
같은 행위를 할 때 사용합니다.
CREATE
DataBase, Table, View, INDEX 등을 생성할 때 사용합니다.
CREATE DATABASE DB 이름
CRATE TABLE 테이블 이름
{
컬러명 컬럼속성
}
DROP
DataBase, Table, View, INDEX 등을 삭제할 때 사용합니다.
DROP DATABASE DB 이름
DROP TABLE 테이블 이름
ALTER
DataBase, Table 등의 속성을 변경할 때 사용합니다.
ALTER DATABASE DB 이름 변경 조건
ALTER TABLE 테이블 이름 ADD 변경 조건
// 테이블에 새로운 컬럼(Colum)을 추가합니다
ALTER TABLE 테이블 이름 RENAME 변경 조건
// 테이블의 이름을 변경합니다.
ALTER TABLE 테이블 이름 MODIFY 변경 조건
// 테이블의 컬럼(Colum)을 수정합니다.
ALTER TABLE 테이블 이름 DROP 변경 조건
// 테이블의 컬럼(Colum)을 삭제합니다.
2) DML (Data Manipulation Language)
DML은 데이터베이스에서 데이터를 조작할 때 사용하는 언어로
데이터의 저장, 삭제, 수정, 조회와 같은 행위를 합니다.
INSERT
- TABLE에 새로운 데이터들을 사입할 떄 사용합니다.
INSERT INTO 테이블 이름 (컬럼목록) VALUES (값목록)
SELECT
- 일반적으로 TABLE에서 원하는 데이터들을 조회할 때 사용합니다.
- DB를 관리하면서 가장 많이 사용하는 명령어입니다.
SELECT 컬럼목록 FROM 테이블 이름 WHERE 조건
DELECT
- TABLE에서 특정한 조건에 맞는 데이터들을 삭제할 때 사용합니다.
- WHERE 조건이 없다면, 모든 데이터가 삭제됩니다.
DELETE FORM 테이블 이름 WHERE 조건
UPDATE
- TABLE에서 특정한 조건에 맞는 데이터들을 수정할 때 사용합니다.
- WHERE 조건이 없다면, 모든 데이터를 수정합니다.
UPDATE FORM 테이블 이름 SET 컬럼 = 값 WHERE 조건
3) DCL (Data Control Language)
DCL은 데이터베이스에 대한 권한과 관련된 문법으로
특정 유저가 DB에 접근할 수 있는 권한을 설정할 때 사용합니다.
GRANT
- 데이터베이스의 특정한 유저에게 사용 권한을 부여할 때 사용합니다.
- 권한에는 SELECT, INSERT, UPDATE, DELECT 등 다양한 종류가 존재합니다.
GRANT 권한 ON 객체명 TO 사용자
REVOKE
- 데이터베이스의 특정한 유저에게 사용 권한을 취소할 때 사용합니다.
REVOKE 권한 ON 객체명 FROM 사용자
3) TCL (Transaction Control Language)
TCL은 데이터베이스 내의 트랜잭션을 관리하는 문법으로,
트랜잭션의 시작과 종료, 그리고 롤백을 수행할 때 사용합니다.
COMMIT
- 데이터베이스의 작업이 정상적으로 완료 됐으면 관리자에게 알려줍니다.
START TRANSACTION;
...
COMMIT
ROLLBACK
- 데이터베이스의 작업이 비정상적으로 완료 됐으면 관리자에게 알려줍니다.
START TRANSACTION;
...
ROLLBACK