작성일자 : 2023-07-08 Ver : 0.1.1 DCL(Data Control Language) 데이터를 관리 목적으로 보안, 무결성, 회복, 병행 제어 등을 정의하는데 사용한다. DCL을 사용하면 데이터베이스에 접근하여 읽거나 쓰는 것을 제한할 수 있는 권한을 부여하거나 박탈할 수 있고 트랜잭션을 명시하거나 조작할 수 있다. 불법적인 사용자로부터 데이터를 보호하기 위한 데이터 보안의 역할을 수행하며, 데이터의 정확성을 위한 무결성을 유지하기도 한다. 마지막으로 시스템 장애에 대비한 회복과 병행수행을 제어한다. 1) GRANT 권한을 정의할때 사용하는 명령어 2) REVOKE 권한을 삭제하는 명령어
SQL
작성일자 : 2023-08-06 Ver : 0.1.1 1.TCL(Transaction Control Language) TCL 문을 사용하면 아래와 같이 트랜잭션을 제어할 수 있다. 현재 트랜잭션의 변경 내용을 데이터베이스에 영구적으로 저장(COMMIT)하고 트랜잭션을 종료한다. 현재 트랜잭션의 변경 내용을 모두 취소(ROLLBACK)하고 트랜잭션을 종료한다. ROLLBACK이 가능한 저장점(SAVEPOINT)을 생성한다. -------------------------------------------- 트랜잭션 1 시작 INSERT INTO t1 ... ; UPDATE t1 ... ; COMMIT ; -------------------------------------------- 트랜잭션 1 종료(변경 내..
작성일자 : 2023-07-24 수정일자 : 2023-08-02 Ver 0.1.2 DML(Data Manipulation Language) 데이터베이스의 내부 데이터를 관리하기 위한 언어이다. 데이터를 CRUD( Create, Read, Update, Delete) 작업을 수행하기 위해 사용된다. SELECT문을 제외한 DML문은 데이터의 변경 및 LOCK을 발생 시키기 때문에 사용에 주의를 기울여야 한다. (다른 사용자에게 영향을 미칠 수 있다.) 종류 설명 INSERT 문 테이블에 신규 행을 삽입하는 SQL 문 UPDATE 문 테이블에 기존 행을 갱신하는 SQL 문 DELETE 문 테이블에 기존 행을 삭제하는 SQL 문 MERGE 문 두 집합(소스, 타겟) 간에 데이터를 병합하는 SQL 문 1. IN..
작성일자 : 2023-07-01 수정일자 : 2023-07-08 Ver : 0.1.2 DML(Data Manipulation Language) : 데이터베이스의 내부 데이터를 관리하기 위한 언어이다. 데이터를 조회, 추가, 변경, 삭제 등의 작업을 수행하기 위해 사용된다. 특징 DDL과 달리 DML은 적는 즉시 반영(Auto Commit)이 되지 않는다. 다시 말해, DML에 의한 데이터 변동은 영구적인 변경이 아니기 때문에 ROLLBACK 으로 다시 되돌릴 수 있다. 또한, DML은 Target 테이블을 메모리 버퍼 위에 올려두고 변경을 수행하기 때문에, 실시간으로 테이블에 반영되지 않는다. Commit 명령어를 통해 Transaction을 종료해야 해당 변경 사항이 테이블에 반영된다. 쿼리 수행 순서..