데이터베이스 언어의 필요

  • 데이터베이스 시스템이 하는 일 : 데이터 관리와 데이터 사용에서 발생할 수 있는 문제를 원천적으로 차단하기 위해 분리하고 중지하는 것
  • DBMS에게 명령함

SQL의 개요

  • Structured Query Language는 관계대수에 기초하여 RDBMS의 데이터 관리를 위해 설계된 언어
  • 특징
    - 비절차적(선언형), 필요한 데이터만 기술
    • 인간의 언어와 매우 유사, 간단, 명료

SQL의 구성

  1. 데이터정의언어(DDL)
  • 데이터베이스내의 객체를 생성 및 삭제하고 그 구조를 조작하는 명령어의 집합
  • 데이터가 준수해야하는 제약조건을 기술
  • CREATE, ALTER, DROP 문 등
  1. 데이터조작언어(DML)
  • DDL에 의해 정의된 테이블에 데이터를 조작하는 명령어의 집합
  • 데이터에 대한 CRUD 명령을 포함
  • INSERT, UPDATE, DELETE, SELECT

데이터 정의 언어

  1. 데이터베이스 객체를 생성, 삭제 또는 구조를 수정하는 명령어의 집합
  2. 데이터베이스 객체의 종류
  • 데이터 저장 : 테이블, 인덱스, 뷰
  • 데이터 조작 : 트리거, 프로시저, 함수 등
  1. 데이터 정의 명령어의 종류
  • CREATE : 객체 생성
  • ALTER : 객체 변경
  • DROP : 객체 삭제

데이터 정의 언어의 구분 형식


명령어+객체로 명령 전달

스키마 정의

  1. 스키마 === 데이터베이스
  2. 한 조직의 데이터베이스 시스템의 운영이 필요한 데이블, 인덱스, 뷰 등의 데이터베이스 객체의 집합
  3. 스키마 관리방법
  • Forward Engineer
  • SQL 에디터
  • 내비게이터패널

스키마 관리 구문 형식

  1. 스키마 생성
  • CREATE SCHEMA 스키마이름
  1. 스키마 삭제
  • DROP SCHEMA 스키마이름
  • ALTER SCHEMA는 거의 사용하지 않고, DROP 후 다시 만듦

테이블 정의

  1. 새로운 2차원 형태의 테이블의 생성

데이터 타입의 개념

  1. 컬럼이 가질 수 있는 값의 범위, 즉 도메인을 결정
  2. 프로그래밍 언어에서의 변수를 생성하는 데이터 타입의 사용목적과 방법이 매우 유사
  3. 기본 데이터 타입

정수 데이터 타입

-> 공간 효율성

실수 데이터 타입

날짜 및 시간 데이터 타입

문자 데이터 타입


-> CHAR는 공간 낭비 있음
-> VARCHAR는 검색의 속도가 느릴 수 있음, 관리의 어려움 있음

  • 4000자가 max

테이블 수정

  1. 생성된 테이블에 컬럼을 추가, 수정(이름, 데이터 타입, 제약조건) 또는 삭제하는 명령
  2. 컬럼 삭제 또는 컬럼의 데이터 타입 수정시 데이터에 대한 소실이 발생할 수 있음
  3. 테이블 수정 방법
  • SQL 구문
  • 내비게이터 패널

테이블 수정 구문 형식

  1. 새로은 컬럼을 추가, 삭제 및 수정하는 등의 테이블 구조를 변경

테이블 삭제

  1. 존재라는 테이블을 스카마에서 삭제
  2. 삭제할 테이블의 모든 데이터가 소실, 복구 불가능
  3. 테이블 삭제 방법
  • SQL 구문
  • 내비게이터 패널

제약조건

  1. 테이블과 테이블에 존재하는 데이터를 보다 무결하게 관리 목적
  2. 테이블 조작시 정의된 제약조건 만족여부 지속적 검사
  3. 다양한 제약 조건 지원

제약조건의 종류

profile
기억이 안되면, 기록을 -

0개의 댓글