제1절_관계형_데이터베이스_개요
2011.09.10 22:20
1. 데이터베이스
(정의) 특정 기업이나 조직 또는 개인이 필요에 의해(ex: 부가가치가 발생하는) 데이터를 일정한 형태로 저장해 놓은 것.
(데이터베이스 관리 소프트웨어) -> DBMS(Database Management System)
- 1960년대 : 플로우차트 중심의 개발 방법
- 1990년대 : 객체 관계형 데이터베이스로 Oracle, Sybase, Informix, DB2, Teradata, SQL Server
■ 관계형 데이터베이스(Relational Database)
- 1970년 영국의 수학자였던 E.F. Codd 박사의 논문에서 처음으로 관계형 데이터베이스가 소개
- 파일시스템의 단점
동시에 입력, 수정, 삭제할 수 없기 때문에 정보의 관리가 어렵다
복사본 파일을 만들어 사용할 경우 데이터의 불일치성이 발생한다.
- 관계형 데이터베이스의 장점
정규화를 통해 이상(ANOMALY) 현상을 제거하고 데이터 중복을 피할 수 있다
동시성 관리, 병행 제어를 통해 데이터를 공유
데이터의 표현 방법 등을 체계화할 수 있고, 데이터 표준화, 데이터 품질을 확보
보안 기능
데이터 무결성(Integrity)을 보장
데이터를 회복/복구하는 기능
2. SQL(Structured Query Language)
- SQL의 최초 이름이 SEQUEL(Structured English QUEry Language) - ‘에스큐엘’로 읽는 것을 권고한다.
- 1986년부터 ANSI/ISO를 통해 표준화되고 정의된 SQL 기능은 벤더별 DBMS 개발의 목표가 된다.
ANSI/IS0 SQL-99, SQL-2003 등
- 각 벤더의 관계형 데이터베이스(RDBMS)는 표준화된 SQL 이외에도 벤더 차별화 및 이용 편리성을 위해 추가 기능 구현
- SQL 문장들의 종류 - SQL 명령어는 3가지 SAVEPOINT 그룹인 DDL, DML, DCL로 구분
TCL의 경우 굳이 나눈다면 일부에서 DCL로 분류하기도 하지만, 다소 성격이 다르므로 별도의 4번째 그룹으로 분리
3. TABLE
- 테이블의 예
- 테이블(TABLE) : 데이터를 저장하는 객체(Object)로서 관계형 데이터베이스의 기본 단위
- 테이블의 분할 : 데이터의 불필요한 중복을 줄이는 것을 정규화(Normalization)라고 한다.
이상현상(Anomaly)을 방지
- 키(key) : 기본키(Primary Key), 외부키(Foreign Key)
4. ERD(Entity Relationship Diagram)
- ERD : ERD(Entity Relationship Diagram). ERD의 구성 요소는 엔터티(Entity), 관계(Relationship), 속성(Attribute) 3가지
- IE(Information Engineering) 표기법과 Barker(Case*Method) 표기법
(예 1 ) K-리그 테이블 간의 양방향 관계
하나의 팀은 여러 명의 선수를 포함할 수 있다. - 한 명의 선수는 하나의 팀에 꼭 속한다.
하나의 팀은 하나의 전용 구장을 꼭 가진다. - 하나의 운동장은 하나의 홈팀을 가질 수 있다.
하나의 운동장은 여러 게임의 스케줄을 가질 수 있다. - 하나의 스케줄은 하나의 운동장에 꼭 배정된다.
(예 2) 부서-사원 테이블 간의 관계 : IE 표기법과 Barker 표기법
하나의 부서는 여러 명의 사원을 보유할 수 있다.
한 명의 사원은 하나의 부서에 꼭 소속된다.
사원-부서 테이블 간의 양방향 관계는 다음과 같다.
- SQL 개발자 자격증 (bysql.net 2011년 2차 스터디)
- 작성자: 박우창
- 최초작성일: 2011년 09월 18 일
- 본문서는 bysql.net 스터디 결과입니다 .본 문서를 인용하실때는 출처를 밝혀주세요. http://www.bysql.net
- 문서의 잘못된 점이나 질문사항은 본 문서에 댓글로 남겨주세요. ^^
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
47 | Front Page | 운영자 | 2011.08.23 | 253010 |
46 | 연습문제 | 노랑배 | 2011.09.01 | 41250 |
45 | SQL 문제 [2] | balto | 2011.11.15 | 26833 |
44 | 제1절 데이터 모델의 이해 | 실천하자 | 2011.08.28 | 22268 |
43 | 2_장요약 | suspace | 2011.09.08 | 22213 |
42 | 제6절_윈도우_함수(WINDOW_FUNCTION) | suspace | 2011.10.27 | 20548 |
41 | 제1장_데이터_모델링의_이해 | 실천하자 | 2011.08.26 | 20234 |
40 | 장_요약 [1] | balto | 2011.09.02 | 16521 |
39 | 제1절_표준_조인(STANDARD_JOIN) | 노랑배 | 2011.10.13 | 15693 |
38 | 제4절_서브쿼리 | balto | 2011.10.08 | 14291 |
37 | 제2절_집합_연산자(SET_OPERATOR) [1] | 실천하자 | 2011.10.11 | 13880 |
36 | 제5절 식별자 | 실천하자 | 2011.09.01 | 13557 |
35 | 제3절_DML(DATA_MANIPULATION_LANGUAGE) | 노랑배 | 2011.09.20 | 12896 |
34 | 제6절_분산_데이터베이스와_성능 | suspace | 2011.09.08 | 12190 |
33 | 제3절_계층형_질의와_셀프_조인 [1] | 실천하자 | 2011.10.12 | 11499 |
32 | 제5절_그룹_함수(GROUP_FUNCTION) | balto | 2011.10.08 | 11437 |
» | 제1절_관계형_데이터베이스_개요 | balto | 2011.09.10 | 11231 |
30 | 제6절_함수(FUNCTION) | monsterRachel | 2011.09.29 | 10940 |
29 | 4_연습문제 | monsterRachel | 2011.11.03 | 10852 |
28 | 제4절 관계(Relationship) [1] | balto | 2011.08.29 | 10485 |