- 1974년 IBM 연구소에서 개발한 SEQUEL에서 유래한다.
- 국제 표준 데이터베이스 언어이며, 많은 회사에서 관계형 데이터베이스(RDB)를 지원하는 언어로 채택하고 있다.
- 관계대수와 관계해석을 기초로 한 혼합 데이터 언어이다.
- 질의어지만 질의 기능만 있는 것이 아니라 데이터 구조의 정의, 데이터 조작, 데이터 제어 기능을 모두 갖추고 있다.
- SQL은 기능에 따라 DDL(데이터 정의어), DML(데이터 조작어), DCL(데이터 제어어)로 나눈다.
- DDL은 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어이다.
- 논리적 데이터 구조와 물리적 데이터 구조의 사상을 정의한다.
- 데이터베이스 관리자나 데이터베이스 설계자가 사용한다.
- DDL(데이터 정의어)의 세 가지 유형
명령어 기능 CREATE SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의한다. ALTER TABLE에 대한 정의를 변경하는 데 사용한다. DROP SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 삭제한다.
- DML은 데이터베이스 사용자가 응용 프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는 데 사용되는 언어이다.
- 데이터베이스 사용자와 데이터베이스 관리 시스템 간의 인터페이스를 제공한다.
- DML(데이터 조작어)의 네 가지 유형
명령어 기능 SELECT 테이블에서 조건에 맞는 튜플을 검색한다. INSERT 테이블에 새로운 튜플을 삽입한다. DELETE 테이블에서 조건에 맞는 튜플을 삭제한다. UPDATE 테이블에서 조건에 맞는 튜플의 내용을 변경한다.
- DCL은 데이터의 보안, 무결성, 회복, 병행 수행 제어 등을 정의하는 데 사용되는 언어이다.
- 데이터베이스 관리자가 데이터 관리를 목적으로 사용한다.
- DCL(데이터 제어어)의 종류
명령어 기능 COMMIT 명령에 의해 수행된 결과를 실제 물리적 디스크로 저장하고, 데이터베이스 조작 작업이 정상적으로 완료되었음을 관리자에게 알려준다. ROLLBACK 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구한다. GRANT 데이터베이스 사용자에게 사용 권한을 부여한다. REVOKE 데이터베이스 사용자의 사용 권한을 취소한다.