목차
SQL - 구조화 질의 언어
SQL은 Structured Query Language의 줄임말이다. 직역하면 구조화 질의 언어인데, 과연 슨 언어일까?
SQL은 DB를 제어하기 위해 개발된 언어다. 데이터 검색, 등록, 삭제등의 작업은 모두 SQL로 가능하다.
표준 규격(ISO 국제 표준화기구 또는 ANSI 협회에서 지정) 있지만, DBMS별로 차이가 있을 수 있다
모든 RDBMS가 표준 규격을 다라야 한다는 강제성은 없다. 다시 말해, RDBMS가 요구하는 독자적인 문법이 있을 수 있다.
참고로, 에스큐엘, 또는 시퀄 이렇게 발음된다. 한국인은 대부분 에스큐엘이라고 부르는데, 영미권 사람들 중에는 시퀄이라고 발음하는 사람을 많이 본다.
SQL 문은 RDBMS에 부여한 명령 종류에 따라 다음 세가지로 구분
- DDL (Data Definition Language)
Create, Drop, Alter 등등
데이터베이스 및 테이블을 생성/삭제 - DML (Data Manipulation Language)
Select, Insert, Delete 등등
테이블의 행을 검색/변경
실제로 사용되는 SQL문의 90%가 여기 해당. - DCL (Data Control Language)
Commit, Rollback, Grant, Revoke 등등
데이터베이스에서 처리한 변경 내용을 확정하거나 취소
SQL 작성 기본 규칙
- 문장 마지막에 세미콜론을 붙인다. 문장의 끝을 나타내는 구분 문자는 반드시 필요한데 이게 세미콜론.
- 대소문자 구별이 없다. SELECT, select, Select 모두 똑같으 결과다. DML 말고, 테이블명이나 콜롬명도 대소문자 구별이 없다. 단 셀의 내용물은 대소문자가 구별된다.
- SQL문 안에 직접 기록하는 문자열, 날짜, 숫자 등을 상수라고 한다.
- 숫자 상수는 따옴표를 붙일 필요가 없다. 1234는 1234다. '1234'가 아니라.
- 문자열은 작은 따옴표를 붙인다. 큰따옴표 X
- 날짜도 작은 따옴표를 붙인다. 참고로 날짜는 DateTime이라는 고유 형식이 있다.
'2021-11-11'이라고 보여질 때, 이게 문자열(varchar) 형식인지, 날짜(DateTime) 형식인지는 주의깊게 볼 것. - 단어는 공백문자나 줄바꿈 문자로 구분한다.