Introduction

1장부터 22장까지 설명하지 못한 고급 기능에 대해서 설명하는 장이다.

Content

1. 무엇을 제약 조건 이라고 하는가?

DB를 사용하다 보면, 정확한 정보만 들어가야 할 때가 있다. 임시 테이블에 값을 넣어 보아 잘 되나 안되나 체크 할 수 있으나, 너무 비효율적이기 때문에, 애초에 "이 값 아니면 안받을 꺼다." 라고 으름장(위협하는 것)을 놓는 것이다.

이 제약조건을 넣게 되면 다음과 같은 이점이 있다.

  • 클라이언트가 제약 조건을 계산하지 않아도 된다.
  • 무결성이 보장 된다.

실제로 가장 흔히 쓰는 제약 조건은 NOT NULL 일것이다.

2. 무엇을 기본 키 라고 하는가?

제약 조건 중 한가지로, 테이블에 있는 특정 열이 가진 값이 고유하게 유지시키는 제약 조건이다. 기본키는 다른 테이블과 엮기게 될 때, 자주 사용하며, 단일 레코드 선택을 위해서도 사용 된다.

몇가지 주의 사항이 있는데, 다음과 같다.

  • NULL 일 수 없다.
  • 기본키는 UPDATE 로 변경 되지 않는다.
  • 기본키 값은 재사용 되지 않는다.

이 정도면 된다.

참조 링크

3. 무엇을 외래 키 라고 하는가?

기본 키 값으로 이루어진 열을 말한다. 기본키가 다른 레코드에서 외래 키로 쓰인다고 생각하면 된다. 외래키를 설정하면, 그 키가 가리키고 있는 테이블의 레코드가 실제로 있을 때만 작업할 수 있는 효과를 얻을 수 있다.

참조 링크

4. 무엇을 고유 제약 조건 이라고 하는가?

고유 제약 조건은 중복값을 갖지 않는 제약 조건이다. 기본 키와 비슷한 특징이지만, 다음과 같은 다른 점이 있다.

  • 테이블 내 여러 열에 이 제약 조건을 추가 할 수 있다.
  • NULL 값을 갖을 수 있다.
  • UPDATE 로 수정이 가능하다.
  • 고유값이라면 언제든지 재사용 가능하다.
  • 외래 키로 설정할 수 없다.

참조 링크

5. 무엇을 CHECK 제약 조건 이라고 하는가?

열에 있는 데이터가 지정한 특정한 조건에 맞는지 검사하는 제약 조건이다. 이 제약 조건은 보통 최소/대값, 범위 지정, 특정한 값만 허용 등을 위해서 사용 된다. CHECK 제약 조건을 거는 방법은 참조 링크로 대체 한다.

참조 링크

6. 무엇을 인덱스라고 하며, 왜 사용 하는가?

인덱스는 쉽게 색인/차례 라고 보면 된다. 책을 보다가 특정 정보를 찾기 위해서 색인이나 차례를 봐서, 관련 페이지를 찾고, 관련 페이지로 한번에 쉽게 넘어 갈수 있듯이, 인덱스는 테이블의 색인/차례 이다.

그러므로 인덱스를 사용 하면, 원하는 것을 더 빠르게 찾을 수 있다. 그렇다고 이점만 있는것이 아니다. 인덱스인 열이 있을 경우, 그 열에 쓰기작업은 읽기 작업보다 많이 느려진다.

참조 링크

7. 무엇을 트리거 라고 하는가?

한 테이블이 변화 될 때, 호출되는 저장 프로시저를 트리거 라고 말한다.  어떻게 사용 하는지는 참조 링크를 보길 바란다. 주의 해야 할 점음 제약조건인 기능은 트리거로 만들면 성능 저하가 생긴다.

참조 링크

8. 무엇을 데이터베이스 보안 이라고 하는가?

대문은 자물쇠로 걸어 둔다.. 자물쇠는 열쇠로 풀수 있다. 자물쇠가 풀리면 대문이 열린다. 대문을 열면 들어 갈 수 있다. 여기서 자물쇠를 걸어 두는 것은 열쇠를 갖은 자만이 들어 오도록 제한을 두는 것이다. 이 제한을 보안이라고 한다.

데이터 베이스 보안은 다음등을 말한다.

  • 데이터 베이스 접근, 생성, 삭제 제한
  • 테이블 접근 제한
  • 테이블 생성, 변경, 삭제 제한
  • 저장 프로시저 사용 제한
  • 다른 사용자 제한을 설정하는 제한

참조 링크

Digression

이것으로 이 책을 다 훎터 보았다. 이제 조금 더 깊게 SQL 에 들어간 책을 봐야 할 차례가 왔다.

저작자 표시
신고
posted by 농사를 짓는 게임 프로그래머 최익필

댓글을 달아 주세요