CS

[CS / TOPCIT] 관계 데이터베이스 언어(SQL)

따봉치치 2023. 5. 8. 17:54

SQL

관계형 데이터베이스에 저장된 구조와 값을 처리하기 위한 데이터베이스 처리 언어

 

데이터 정의어(DDL)

데이터베이스 스키마를 컴퓨터가 이해할 수 있도록 기술하는데 사용, 테이블의 구조의 생성, 변경, 삭제 담당

  • CREATE : 객체 생성 및 정의
  • ALTER : 객체의 변경
  • DROP : 객체의 삭제
  • RENAME : 객체명 변경

데이터 제어어(DCL)

데이터베이스를 공동으로 사용하기 위한 데이터 제어를 정의하고 기술하기 위해 사용

데이터 보안, 무결성, 회복, 병행수행제어 등의 역할

  • GRANT : 사용자에게 객체에 대한 권한 부여
  • REVOKE : 권한 회수
  • COMMIT : 트랜잭션을 종료하고 데이터의 변경을 확정할 때 사용
  • ROLLBACK : 트랜잭션을 취소하고 데이터의 변경을 이전 상태로 복구할 때 사용

데이터 조작어(DML)

데이터베이스에 데이터를 입력, 수정, 삭제, 조회하기 위해 사용

 

1. DML 기본 연산

  • SELECT : 테이블에 저장된 데이터 값을 조회할 때 사용
  • INSERT : 테이블의 전체 칼럼 또는 일부 칼럼에 값을 입력할 때 사용
  • UPDATE : 테이블에 저장된 데이터 값을 변경할 때 사용
  • DELETE : 테이블에 저장된 데이터를 삭제할 때 사용

2. DML 그룹 연산

  • COUNT : 행의 수를 출력할 때 사용
  • SUM : NULL 값을 제외한 합계 출력할 때 사용
  • AVG : NULL 값을 제외한 평균을 출력할 때 사용

3. DML 고급 조인 연산

  • NL Join
  • Sort Merge Join
  • Hash Join

저장 프로시저 (Stored Procedure)

일련의 쿼리를 마치 하나의 함수처럼 실행하기 위한 쿼리의 집합, 영구 저장 모듈

 

임베디드 SQL

데이터를 정의하거나 데이터에 접근하는 SQL 문장이 C,C++,Java 등의 응용 프로그램 내에 포함되어 프로그램 실행 시점에 함께 수행되는 경우, 삽입된 SQL을 임베디드 SQL, 응용 프로그램을 호스트 프로그램이라고 함, 단 하나의 투플만 반환가능

 

동적 SQL

프로그램 로직에 따라 SQL 구문을 동적으로 처리하는 방식