WEB/SQL
[SQL INJECTION] SQL 기본 문법 정리 Ⅰ
뇨롱
2020. 8. 21. 04:26
이 포스트는 인프런의 성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법 을 보고 작성하였습니다!
1. SQL 이란?
사용자의 INPUT에 SQL 구문을 넣어 DB에 질의 하는 것.
* DB(데이터베이스)란?
데이터를 구조적으로 모아둔 데이터 집합소.
관계형 데이터베이스(RDB) : 테이블(형, 열)
비관계형 데이터베이스(NO SQL)
→ 비구조적, 큰 용량, 빠른 속도 ⇒ 빅데이터에 적합함, 가변적인 데이터 ex)mongoDB
(1) SQL의 구조
DBMS: DB의 데이터에 접근할 수 있도록 하는 것
application: SQL Client Program
ex) JAVA, PHP, C, C++
RDMS:
ex) ORACLE, MYSQL, SQLSERVER, POSTGRESQL
(2) SQL 문법
① 데이터 정의 언어 (DDL): CREATE, DROP, ALTER
② 데이터 조작 언어 (DML): SELECT, INSERT, UPDATE, DELETE ← SQL INJECTION 에서 사용
1) CRUD: 기본적인 데이터 처리 기능
2) CREATE(생성): INSERT,
3) READ(읽기): SELECT,
4) UPDATE(갱신): UPDATE,
5) DELETE(삭제): DELETE
③ 데이터 제어 언어 (DCL): GRANT, REVOKE