티스토리 뷰

관계 데이터베이스를 위한 표준 질의어

1974년에 IBM 연구소에서 데이터베이스 시스템, “시스템 R”을 질의하기 위해서 만들어진 구조화된 언어

미국 표준 연구소인 ANSI와 국제 표준화 기구인 ISO에서 표준화 작업을 진행

SQL의 분류

  • 데이터 정의어(DDL)
    • 테이블을 생성하고 변경. 제거하는 기능을 제공
  • 데이터 조작어(DML)
    • 테이블에 새 데이터를 삽입하거나, 테이블에 저장된 데이터를 수정,삭제,검색하는 기능을 제공
  • 데이터 제어어(DCL)
    • 보안을 위해 데이터에대한 접근 및 사용 권한을 사용자별로 부여하거나 취소하는 기능을 제공

 


 

사용할 릴레이션

 

 


 

 

테이블 생성 : CREATE TABLE

  • [ ]의 내용은 생략이 가능
  • SQL 질의문은 세미콜론으로 문장의 끝을 표시
  • SQL 질의문은 대소문자를 구분하지 않음
  1. 테이블을 구성하는 각 속성의 이름, 데이터 타입, 기본 제약 사항 정의
  2. 기본키 정의
  3. 대체키 정의
  4. 외래키 정의
  5. 데이터 무결성을 위한 제약조건 정의
  • 속성의 정의
    • 테이블을 구성하는 각 속성의 데이터 타입을 선택한 다음 널 값 허용 여부와 기본 값 필요 여부를 결정
    • NOT NULLex) 고객아이디 VARCHAR(20) NOT NULL
    • 속성이 널 값을 허용하지 않음을 의미하는 키워드
    • DEFAULTex) 적립금 INT DEFAULT 0
    • ex) VARCHAR(10) DEFAULT’ 방경아’
    • 속성의 기본 값을 지정하는 키워드
  • Key의 정의
    • Primary Keyex) Primary Key(고객아이디)
    • ex) Primary Key(주문고객, 주문제품)
    • 기본키를 지정하는 키워드
    • UNIQUE대체키로 지정되는 속성의 값은 유일성을 가지며 기본키와 달리 널 값이 허용됨
    • ex) UNIQUE(고객이름)
    • 대체키를 지정하는 키워드
    • Foreign Key외래키가 어떤 테이블의 무슨 속성을 참조하는지 PEFERENCES 키워드 다음에 제시
    • ex) FOREIGN KEY(소속부서) REFERENCES 부서(부서번호)
    • 외래키를 지정하는 키워드
  • 데이터 무결성 제약조건의 정의
    • CHECKCONSTRAINT 키워드와 함께 고유의 이름을 부여할 수도 있음
    • ex) CHECK(재고량 ≥ 0 and 재고량 ≤ 10000)
    • 테이블에 정확하고 유효한 데이터를 유지하기 위해 특정 속성에 대한 제약조건을 지정

 

 

IF 고객테이블은 고객아이디, 고객이름, 나이, 등급, 직업, 적립금 속성으로 구성되고, 고객아이디 속성이 기본키다.

고객이름과 등급 속성은 값을 반드시 입력해야 하고, 적립금 속성은 값을 입력하지 않으면 0이 기본으로 입력되도록 고객 테이블을 생성해보자

 

CREATE TABLE 고객(
 고객아이디 CHAR(20) NOT NULL,
 고객이름 CHAR(10) NOT NULL,
 나이 INT;
 등급 CHAR(10) NOT NULL,
 직업 CHAR(10).
 적립금 INT DEFAULT 0,
 PRIMARY KEY (고객아이디)
);

 


 

 

테이블 변경 : ALTER TABLE

  • 새로운 속성 추가

IF 고객테이블에 가입날짜 속성을 추가해보자

ALTER TABLE 고객
	ADD 가입날짜 DATETIME;

 


 

 

기존 속성 삭제

  • CASCADE
  • 삭제할 속성과 관련된 제약조건이나 차조하는 다른 속성을 함께 삭제
  • RESTRICT
  • 삭제할 속성과 관련된 제약조건이나 참조하는 다른 속성이 존재하면 삭제 거부

 


 


테이블 제거 : DROP TABLE

  • CASCADE
  • 제거할 테이블을 참조하는 다른 테이블도 함께 제거
  • RESTRICT
  • 제거할 제이블을 참조하는 다른 테이블이 존재하면 제거 거부

 

참고 강의) http://www.kocw.net/home/cview.do?cid=9c591659f017851e

 

데이터베이스의 원리와 응용

본 강의에서는 데이터베이스 입문자들에게 꼭 필요한 데이터베이스 기초 이론, 데이터 모델과 연산, SQL, 데이터베이스 설계에 대해 공부하고자 한다.

www.kocw.net

 

'DataBase System' 카테고리의 다른 글

데이터베이스와 파일시스템의 차이  (0) 2023.05.21
SQL 조작  (0) 2022.08.22
관계 데이터 연산  (0) 2022.08.22
정규화  (0) 2022.08.22
데이터 모델링  (0) 2022.08.22
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함