제1절_관계형_데이터베이스_개요
2011.09.10 13: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
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
27 | 제4절_서브쿼리 | balto | 2011.10.08 | 14422 |
26 |
제9절_조인(JOIN)
![]() | DB지기 | 2011.09.29 | 7660 |
25 | 제8절_ORDER_BY_절 | 실천하자 | 2011.09.29 | 6710 |
24 | 제7절_GROUP_BY_HAVING_절 | 실천하자 | 2011.09.28 | 7778 |
23 | 제6절_함수(FUNCTION) | monsterRachel | 2011.09.28 | 11050 |
22 | 제5절_WHERE_절 | 실천하자 | 2011.09.21 | 7149 |
21 | 제4절_TCL(TRANSACTION_CONTROL_LANGUAGE) | 노랑배 | 2011.09.20 | 8638 |
20 | 제3절_DML(DATA_MANIPULATION_LANGUAGE) | 노랑배 | 2011.09.19 | 13030 |
19 | 제2절_DDL(DATA_DEFINITION_LANGUAGE) | balto | 2011.09.10 | 10413 |
» | 제1절_관계형_데이터베이스_개요 | balto | 2011.09.10 | 11361 |
17 | 2_연습문제 | suspace | 2011.09.08 | 7230 |
16 | 2_장요약 | suspace | 2011.09.08 | 22331 |
15 | 제6절_분산_데이터베이스와_성능 | suspace | 2011.09.08 | 12314 |
14 |
제3절_반정규화와_성능
![]() | DB지기 | 2011.09.07 | 6969 |
13 |
제2절_정규화와_성능
![]() | DB지기 | 2011.09.07 | 7342 |
12 |
제1절_성능_데이터_모델링의_개요
![]() | DB지기 | 2011.09.07 | 7263 |
11 | 제5절_데이터베이스_구조와_성능 | monsterRachel | 2011.09.07 | 6776 |
10 | 제4절_대량_데이터에_따른_성능 | monsterRachel | 2011.09.07 | 7732 |
9 | 장_요약 [1] | balto | 2011.09.02 | 16688 |
8 | 연습문제 | 노랑배 | 2011.09.01 | 41366 |