본문 바로가기
[SQL]

[SQL] SQL(Structured Query Language)

by 북방바다코끼리표범 2023. 9. 7.

SQL(Structured Query Language)

 

구조화된 질의 언어

 - (데이터베이스의 모든 작업을 통제하는 비절차적(Non-procedural) 언어)

 

비절차적(Non-procedural) 언어

- 데이터베이스 사용자(이하 사용자)가 SQL을 사용해 원하는 작업의 결과만 기술

(작업이 어떻게 수행될 것인지는 전혀 고려하지 않아도 된다는 것 의미)

- 사용자가 작성한 SQL 문장을 데이터베이스 안에서 어떻게 수행할 것인가는 각 시스템에 의해서 결정

 

데이터베이스 시스템

- 데이터를 어떻게 저장할 것인지, 메모리를 어떻게 이용할 것인지, 데이터를 어떠한 순서로 읽을 것인지 등에 대한 정책과 최적화 과정을 수립

- SQL은 일반적인 데이터베이스 작업을 기술하기 위한 SQL 문장(Statement)을 정의

 

SQL을 이용하여 기술할 수 있는 데이터베이스 작업

  • 스키마 객체(Schema Object)의 생성, 변경, 제거
  • 데이터베이스 질의
  • 데이터의 삽입, 갱신, 삭제
  • 트랜잭션 관리 및 세션 관리 등을 포함하는 데이터베이스 관리

 

SQL 문장의 종류

  • 데이터 정의어(Data Definition Language)
  • 데이터 조작어(Data Manipulation Language)
  • 데이터 제어어(Data Control Language)

데이터 정의어

- 데이터 정의어(이하 DDL)는 데이터 간에 관계를 정의하여 데이터베이스 구조를 설정하는 SQL 문장

 (기본적으로 스키마 객체를 생성, 변경, 제거하기 위해 사용)

Tibero에서 제공하는 DDL

구분명령어설명

 

데이터베이스 CREATE DATABASE 데이터베이스를 생성한다.
ALTER DATABASE 데이터베이스를 변경한다.
테이블 CREATE TABLE 테이블을 생성한다.
ALTER TABLE 테이블을 변경한다.
DROP TABLE 테이블을 제거한다.
테이블 스페이스 CREATE TABLESPACE 테이블 스페이스를 생성한다.
ALTER TABLESPACE 테이블 스페이스를 변경한다.
DROP TABLESPACE 테이블 스페이스를 제거한다.
인덱스 CREATE INDEX 인덱스를 생성한다.
ALTER INDEX 인덱스를 변경한다.
DROP INDEX 인덱스를 제거한다.
CREATE VIEW 뷰를 생성한다.
ALTER VIEW 뷰를 변경한다.
DROP VIEW 뷰를 제거한다.
동의어 CREATE SYNOMYM 동의어를 생성한다.
DROP SYNOMYM 동의어를 제거한다.
사용자 CREATE USER 사용자를 생성한다.
ALTER USER 사용자를 변경한다.
DROP USER 사용자를 제거한다.
함수 CREATE FUNCTION 함수를 생성한다.
ALTER FUNCTION 함수를 변경한다.
DROP FUNCTION 함수를 제거한다.
프러시저 CREATE PROCEDURE 프러시저를 생성한다.
ALTER PROCEDURE 프러시저를 변경한다.
DROP PROCEDURE 프러시저를 제거한다.
특권 GRANT 사용자에게 특권을 부여한다.
REVOKE 사용자에게 특권을 회수한다.
역할 CREATE ROLE 역할을 생성한다.
ALTER ROLE 역할을 변경한다.
DROP ROLE 역할을 제거한다.
객체 RENAME 테이블, 뷰, 동의어, 시퀀스 등의 스키마 객체의 이름을 변경한다.
감시 AUDIT 특권의 사용을 감시한다.
NOAUDIT 특권의 감시를 해제한다.

 

데이터 조작어

 

- 데이터베이스에 저장된 데이터에 대한 질의, 삽입, 갱신, 삭제를 수행하기 위한 SQL 문장

Tibero에서 제공하는 DML의 명령어

명령어설명

 

SELECT 데이터를 조회한다.
INSERT 데이터를 삽입한다.
UPDATE 데이터를 변경한다.
DELETE 데이터를 삭제한다.

 

트랜잭션 및 세션 관리 언어

 

트랜잭션 관리 언어 :  트랜잭션을 관리하는 SQL 문장

(트랜잭션의 특성을 설정, 트랜잭션을 완료하고 저장 등의 작업 수행)

세션 관리 언어 : 세션의 특성을 설정하기 위한 SQL 문장

Tibero에서 제공하는 트랜잭션 관리 및 세션 관리 명령어

명령어설명

 

COMMIT 트랜잭션을 완료하고 저장한다.
ROLLBACK 트랜잭션을 원래 상태로 복구한다.
SAVEPOINT 저장점을 설정한다.
SET TRANSACTION 트랜잭션의 특성을 설정한다.
ALTER SESSION 세션을 변경한다.
SET ROLE 사용자에게 할당된 역할을 활성화하거나 비활성화한다.