Computer Science/Database, SQL

[HUFS/데이터베이스] #9 SQL 정의문

성중 2021. 10. 6. 20:57

SQL의 특징

SQL(Structured Query Language): 표준화된 종합 DB 언어, 구조화 질의어

약간의 관계 대수와 확장된 튜플 관계 해석으로 이루어진 비절차적 DB언어이다

~ 선언적(비절차적) 언어이기 때문에 접근 경로 등 절차에 대한 명세가 필요없다

  • DDL(데이터 정의어), DML(데이터 조작어). DCL(데이터 제어어)의 기능을 모두 제공
  • Java, C, C++, COBOL 등 범용 언어 기반 응용 프로그램에 삽입된 형태로 활용
  • SQL에서는 편의상 (릴레이션 = 테이블 / 튜플 = 행 / attribute = 열)

 

스키마(schema): 데이터(사용자)에 속하는 메타 데이터(테이블 및 구성요소)를 정의하는 것

(CREATE SCHEMA = CREATE DATABASE 데이터베이스의 한 영역을 만드는 것)

ex) CREATE SCHEMA UNIVERSITY AUTHORIZATION SHLEE;

 

카탈로그(catalog): 메타데이터(모든 스키마)에 대한 정보가 기록되는 스키마(Information_shema)

 

일반적인 도메인(=해당 column이 취할 수 있는 값들의 집합)을 정의 및 제약
도메인 정의문에 넣을 수 있는 데이터 타입 종류

테이블 생성

  • CREATE TABLE로 만드는 기본 테이블(DBMS에 저장)
  • CREATE VIEW로 만드는 가상 테이블(기본 테이블에서 파생되는 테이블, 데이터 저장X)
  • 질의 처리 과정에서 임시로 만들어지는 임시 테이블

테이블 생성 예시
테이블 생성 옵션
DROP 을 활용해 테이블이나 스키마 자체를 제거할 수 있다 (CASCADE/RESTRICT 옵션)
ALTER로 테이블을 변경할 수 있다 / 열의 DROP이나 ALTER는 일반적으로 제한된다