제약 조건 부모 테이블 자식 테이블 입 력 수 정 삭 제  관계형성을 통한 참조 무결성

Slides:



Advertisements
Similar presentations
CUBRID 소개 (Object 개념) 서비스 사업부 / 기술지원팀. 목차 구조 일반적 특징 객체지향 특징 ORDB 개념을 이용한 스키마 ORDB 개념을 이용한 질의.
Advertisements

의료자원 규제현황과 개선방향 자원평가실. 의료자원 관리 개요 규제개혁 토론과제.
연 합 남 전 도 회 월 례 회 1부 예배- 찬 송 장 다같이 2011년 1월 2일 1부 예배- 찬 송 장 다같이 기 도
사 업 계 획 2011년 제1호 - 2월 1일 2011 주 안에서 소통하며 화합하고 참여하며 헌신하는 남신도회
ER Schema (추가)
능력단위명 : 데이터베이스 구현( _14v2) 대분류 중분류 소분류 세분류 정보통신(20) 정보기술(01)
소리가 작으면 이어폰 사용 권장!.
12 프로젝트 실습.
데이터 모델링 방법론 2003년 03월.
데이터베이스 시스템.
실전 데이터모델링 & 데이터베이스 설계와 구축
실전 데이터모델링 & 데이터베이스 설계와 구축
Chapter 02. 데이터 모델링.
질의어와 SQL 기본 SQL 고급 SQL 데이타의 수정 데이타 정의 언어 내장 SQL
관계 대수와 SQL.
DataBase 기본 교육 신입사원용 최지철.
4장. 관계 대수와 SQL SQL 관계 데이터 모델에서 지원되는 두 가지 정형적인 언어
DBMS실습(I) 데이터베이스 기본개념 2015년 1학기 동서울대학교 컴퓨터소프트웨어과.
SQL 개요 SQL 개요 - SQL은 현재 DBMS 시장에서 관계 DBMS가 압도적인 우위를 차지하는 데 중요한 요인의 하나
데이터베이스 담당교수 신정식 Chapter 4 SQL(1).
Information Technology
12. 데이터베이스 설계.
데이터베이스 와 JDBC 1.데이터베이스와 데이터베이스 관리 시스템은? 2.데이터베이스 장점?
Chapter 01 데이터베이스 시스템.
DB2.
관계 데이터 모델과 제약조건 개념, 특성, 키, 무결성 제약조건.
2장. E/R 데이터 모델 엔티티-관계성 (Entity-Relationship) 모델의 요소 설계 원칙
11장. 데이터베이스 서버 구축과 운영.
데이터 웨어 하우스 이병규 김기훈.
데이터베이스 설계와 ER 모델 설계, ER 모델링.
Data Modeling Database 활용을 위한 기초 이론 Database의 개요 Data Modeling
4.2 SQL 개요 SQL 개요 SQL은 IBM 연구소에서 1974년에 System R이라는 관계 DBMS 시제품을 연구할 때 관계 대수와 관계 해석을 기반으로, 집단 함수, 그룹화, 갱신 연산 등을 추가하여 개발된 언어 1986년에 ANSI(미국 표준 기구)에서 SQL.
ER-Win 사용 방법.
2장. 관계 데이터 모델과 제약조건 관계 데이터 모델은 지금까지 제안된 데이터 모델들 중에서 가장 개념이 단순한 데이터 모델의 하나 IBM 연구소에 근무하던 E.F. Codd가 1970년에 관계 데이터 모델을 제안함 관계 데이터 모델을 최초로 구현한 가장 중요한 관계 DBMS.
Database 소개.
제 2 장 데이터베이스 시스템 개념과 아키텍처 Fundamentals of Database Systems
1장. 데이터베이스 시스템 컴퓨터를 사용하여 정보를 수집하고 분석하는데 데이터베이스 기술이 활용되고 있음
01 데이터베이스 개론 데이터베이스의 등장 배경 데이터베이스의 발전 과정 데이터베이스의 정의 데이터베이스의 특징
SQL (structured query language)
제주닷컴 매뉴얼 (실시간 예약시스템) 2013년 10월.
설계 단계 개념적 설계 ER 다이어그램 논리적 설계
정보처리기사 8조 신원철 양진원 유민호 이기목 김다연 윤현경 임수빈 조현진.
4. 관계 데이터베이스 (Relational Database)- 7, 8장
ER-Win 4.0 Database Modeling Ⅰ. Logical Design
2장. 관계 데이터 모델과 제약조건 관계 데이터 모델은 지금까지 제안된 데이터 모델들 중에서 가장 개념이 단순한 데이터 모델의 하나 IBM 연구소에 근무하던 E.F. Codd가 1970년에 관계 데이터 모델을 제안함 관계 데이터 모델을 최초로 구현한 가장 중요한 관계 DBMS.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
ER-관계 사상에 의한 관계 데이터베이스 설계
소프트웨어 공학 Lecture #7: 상세 설계
4. 관계 데이터 모델.
12 데이터 무결성 제약조건 데이터 무결성 제약조건의 개념 데이터 무결성 제약조건의 종류 무결성 제약조건의 생성 방법.
관계 데이타 모델과 관계 데이타베이스 제약조건 충북대학교 구조시스템공학과 시스템공학연구실
학습목표 학습목표 본 장은 데이터베이스를 구성하는 개체, 속성, 관계 등을 다룬다. 특별히 데이터베이스의 구조를 테이블에 기초하여 조직하는 관계 데이터 모델은 개체(entity)와 관계(relationship) 들이 테이블의 집합 형태로 되어 간단하고 이해하기 쉬우며.
데이터베이스 개발 단계.
소프트웨어 공학 (Software Engineering) 상세 설계 (Detailed Design)
                              데이터베이스 설계 및 실습 #8 - ER-Win 한국외국어대학교 DaPS 연구실                              
06. SQL 명지대학교 ICT 융합대학 김정호.
제안 목적 고객성향 분석으로 매출 증대 유사업체 분석으로 신상품 홍보 원가요소 분석 및 피드백으로 원가율 관리
제 8장 데이터베이스.
테이블 관리 테이블 생성,수정,삭제 데이터 입력 수정, 삭제 2010학년도 2학기.
제 8 장 ER-관계 사상에 의한 관계 데이타베이스 설계
상세 개념적 모델링. 상세 개념적 모델링 정규화를 하는 이유 데이터의 중복성 제거 데이터 모형의 단순화 Entity, Attribute의 누락 여부검증 데이터 모형의 안전성 검증.
1. 관계 데이터 모델 (1) 관계 데이터 모델 정의 ① 논리적인 데이터 모델에서 데이터간의 관계를 기본키(primary key) 와 이를 참조하는 외래키(foreign key)로 표현하는 데이터 모델 ② 개체 집합에 대한 속성 관계를 표현하기 위해 개체를 테이블(table)
뇌를 자극하는 Windows Server 장. 데이터베이스 서버.
1장. 서 론 데이터베이스의 개요 모델의 종류 관계형 모델과 객체 지향형 데이터베이스 SQL이란 무엇인가?
ER-관계 사상에 의한 관계데이터베이스 설계 충북대학교 구조시스템공학과 시스템공학연구실
ER-관계 사상에 의한 관계 데이터베이스 설계
ER-관계 사상에 의한 관계 데이터베이스 설계
제 5 장 MariaDB인덱스 생성 및 관리.
GB ridge 웹 모바일및 빅데이터 응용과정 3주차: 데이터베이스 프로그래밍 [경기도형 대학생 취업브리지 사업]
CHAPTER 4 관계 데이터 모델과 관계 데이터베이스 제약조건. CHAPTER 4 관계 데이터 모델과 관계 데이터베이스 제약조건.
Presentation transcript:

제약 조건 부모 테이블 자식 테이블 입 력 수 정 삭 제  관계형성을 통한 참조 무결성 입 력 제약 없음 부모 테이블에 데이터 가 존재하는지 검증 수 정 수정 하려는 데이터를 자식 테이블에서 참조 하고 있는지를 검증 부모 테이블에 존재하 는 다른 데이터로 변경 가능 삭 제 삭제 하려는 데이터를 자식 테이블에서 참조 하고 있는지를 검증 제약 없음 CASCADE 옵션 UPDATE CASCADE : 부모 테이블의 데이터를 수정할 때 이를 참조하고 있는 자식 테이블의 데이터도 함께 수정한다. DELETE CASCADE : 부모 테이블의 데이터를 삭제할 때 이를 참조하고 있는 자식 테이블의 데이터도 함께 삭제한다. && 참조 무결성 실습..

3장. 데이터베이스 모델링, 4장. 개념적 데이터베이스 모델링 3장 데이터베이스 모델링 1. 데이터베이스 모델링 정의 2. 프로젝트 진행 과정 2-1. 업무 분석 2-2. 개념적 데이터베이스 모델링 2-3. 논리적 데이터베이스 모델링 2-4. 물리적 데이터베이스 모델링 4장 개념적 데이터베이스 모델링 1. 개념적 데이터베이스 모델링의 대한 이해 1-1. E-R model(개체-관계 모델)

3장 데이터베이스 모델링 1. 데이터베이스 모델링 정의 : 데이터베이스 모델링이란? 현실 세계의 업무적인 프로세서를 물리적 : 데이터베이스 모델링이란? 현실 세계의 업무적인 프로세서를 물리적 으로 데이터베이스화 하기 위한 과정으로 실체와 관계를 중심으로 체계 적으로 표현하고 문서화하는 기법이며 정보 시스템의 중심을 데이터의 관점에서 접근하는 데이터 중심의 분석 방법이다. 업무 프로세스 (현실세계) 개념적 구조 (개발대상업무) 개념적 데이터베이스 모델링 논리적 데이터베이스 모델링 일치성 검토 물리적 데이터 베이스 데이터 모델 (논리 구조) 물리적 데이터베이스 모델링

데이터의 세계 <3개의 데이터 세계> 현실 (현실 세계), 외부스키마 정보 (개념 세계), 개념스키마 데이터 (컴퓨터 세계), 내부스키마 객체 특성값 개체 집합 속성값 레코드 타입 필드값 추상화, 개념적관점 변환, 논리적관점 <3개의 데이터 세계>

데이터베이스의 설계단계 < 데이터베이스 설계 단계별 주요내용 > 요구조건 분석 단계 개념적 설계 논리적 물리적 구현 및 처리 요구 조건 개념적 설계 DBMS 독립적 개념 스키마 , 트랜잭션 모델링 논리적 목표 에 맞는 인터페이스 물리적 구현 DBMS DDL 로 작성 ( 응용 프로그램 ) 구조 세부

2. 프로젝트 진행 과정 2-1. 업무 분석 2-2. 개념적 데이터베이스 모델링 계 획 분 석 설 계 구 현 테스트 유지보수 2-1. 업무 분석 : 개발 업무에 대한 정확한 분석 및 사용자들의 요구 사항을 분석하고 어떤 기능을 구현해야 하는지 분석 2-2. 개념적 데이터베이스 모델링 : 어떤 정보가 필요하며 어떤 데이터를 DB에 담아야 하는 지 등을 나타 내기 위해 실세계의 정보 구조의 모형을 변환하여 일반화 시키는 단 계이다. (업무적인 관점에서 접근하고 분석하는 단계이다.) 산출물 : ER-Diagram

2-3. 논리적 데이터 모델링 2-4. 물리적 데이터베이스 모델링 : 개념적 설계에서 추출된 실체와 속성들의 관계를 구조적으로 설계하 는 단계(스키마의 설계)로써 정확한 업무 분석을 통한 자료의 흐름을 분석하여 실체와 속성들의 관계를 구조적으로 설계한다. 논리적 데이터베이스 모델링 단계에서 완벽한 정규화 과정을 수행한 다. 1) Mapping Rule 2) 완벽한 정규화 2-4. 물리적 데이터베이스 모델링 : 논리적 데이터모델링에서 정의된 정규화된 모델을 개발 DBMS의 특성 및 효율적 DBMS이 되기 위한 데이터 분산 등을 고려해 데이터베이스 스키마를 구축하는 단계이다. 1) 개발 DBMS 선정 2) 컬럼의 데이터타입과 사이즈 정의 3) 데이터 사용량 분석과 사용자들의 업무 프로세스 분석 4) 역정규화 산출물  FDD 테이블 설계도

E-R 모델의 그래픽 표현 E-R 모델의 그래픽 표현 Entity set (개체) Multi – valued attribute (다중값 속성) Relationship (관계) Derived attribute (유도속성) Attribute (속성) key Primary key Link

< 학사 관계 데이터베이스 스키마 다이어그램 > 교 수 학 생 과 목 전공 성적 과목 번호 이름 학점 지도 강의 등록 교수 학과 학번 주소 학년 n m 1 시간 장소 교수 번호 이름 전공 학과 학번 주소 학년 과목 학점 성적 지도 강의 등록 학생 시간 장소

E-R 모델의 예 예) 회사 데이터베이스를 설계

4장 개념적 데이터베이스 모델링 1. 개념적 데이터베이스 모델링의 대한 이해 1-1. E-R model(개체-관계 모델) 5) 인덱스 설정 및 데이터 분산등을 정의 6) 각종 데이터베이스 개체 정의 7) 데이터베이스 생성 4장 개념적 데이터베이스 모델링 1. 개념적 데이터베이스 모델링의 대한 이해 1-1. E-R model(개체-관계 모델) : 개체-관계 모델은 현실 세계에 존재하는 데이터와 그들 간의 관계를 사람이 이해할 수 있는 형태로 명확하게 표현하기 위해서 가장 널리 사용되고 있는 모델이다.

4장. 개념적 데이터베이스 모델링 1. 실체(Entity) 1-1. 실체(Entity) 정의 1-2. 실체 파악 요령   2. 속성(Attribute) 2-1. 속성 정의 2-2. 속성의 유형 2-3. 속성 도메인의 설정 3. 식별자 3-1. 식별자 정의 3-2. 식별자 유형

4장 개념적 데이터베이스 모델링 1. 실체(Entity) 1-1) 실체 정의 : 업무수행을 위하여 기업이 알아야 될 대상이 되는 사람, 장소, 사물,사 건 및 개념. ( 데이터로 관리 되어져야 하는 항목 ) 각 실체는 유일하게 식별 가능, 인스턴스라 불리는 개별적인 객체들의 집합으로 반드시 주 식별자가 존재해야 함.(상호 배타성,식별성) 엔티티 과 목 학 과 자료 구조 데이터베이스 프로그래밍 … 컴퓨터 공학과 경영정보학과 국어교육학과 … 각각의 인스턴스

예) 학생, 교수, 상품 등 - 물리적으로 존재하는 대상 강좌, 학과, 판매 등 - 개념적으로 존재하는 대상 경복궁, 덕수궁, 비원의 인스턴스 들을 묶어 고궁이라는 실체를 정의 1-2) 실체 파악 요령 : 관련분야에 대한 지식 필요 : 서류 자료( 문서, 장표, 대장 )를 이용 : 담당자와의 인터뷰를 통해 파악 : 상식, 논리, 관찰력을 이용 : 업무 분석 결과를 토대로 명사 위주로 파악 실체 추출 시 주의 사항 : 상상력으로 만든 실체는 사용자에게 오히려 업무부담을 줄 뿐 아니라 정보시스템의 신뢰도까지 떨어뜨릴 수 있다. 실체 명을 부여할 시는 현업용어(업무사용용어), 단순명사, 유일한 명 칭을 사용하는 것이 좋음.

‘학년말에 몇 학년 몇 반의 어떤 과목의 실제 수업시간이 규정수업시간에 채웠는지 아니면 부족한지 ’ 2-(3) 속성도출 ‘학년말에 몇 학년 몇 반의 어떤 과목의 실제 수업시간이 규정수업시간에 채웠는지 아니면 부족한지 ’ 관리의 목적과 활용 방향에 맞는 속성 설정 엔티티 속성 학년 학년코드 반 반코드 과목 과목코드, 과목명 2.개념적 데이터베이스 모델링

2. 속성(Attribute) 2-1) 속성 정의 : 실체(Entity)의 성질,분류,식별,수량,상태등을 나타내는 세부 항목 이며 정보의 요소로써 관리되는 항목이다. 속성은 정확한 실체에 할당되어야하고 반드시 해당되는 실체를 기 술하는 사항이어야 함. 실체에 포함되는 속성의 숫자는 가능하면 10개 항목 내외로 구성 하는 것이 바람직하다. 속성은 식별자와 비 식별자로 구분 된다. 핵심 단어로 정의하거나 명명 규칙을 정의하는 것이 좋다. 2-2) 속성의 유형 기초 속성 : 원래 갖고 있는 속성, 즉 현업에서 기본적으로 사용되는 속성 추출 속성 : 기존 속성으로부터의 가공처리를 통해 생성 및 유지되는 속성(판매금액=판매수량*판매단가) 설계 속성 : 실제로 존재하지는 않으나 시스템의 효율성을 도모하기 위해 설계자가 임의로 부여하는 속성, 외래키가 포함되는 경우(내부 COUNTER 목적의 ID필드가 대표적) 각각의 레코드를 UNIQUE하게 구분할 수 있냐 없냐

2-3) 속성 도메인 설정 : 속성이 가질 수 있는 있는 값들의 범위, 속성에 대한 세부적인 업무 제약조건 및 특성을 전체적으로 정의해 주는 부분. 도메인 추출은 추 후 개발 및 실체를 데이터베이스로 생성할 때나 프로그램 구현 시 유 용하게 사용하는 산출물임.(잘못된 데이터 입력시에 범위설정으로 방지) 도메인 정의항목 : 데이터 타입( 숫자, 문자, 날짜 ), 길이 , Format Mask ( yy/mm/dd, “999-9999” ) 허용되는 값의 제약 조건 ( Check, Rule : ‘A’ and ‘M’, 0 and 100 ) Unique, Null 여부, 초기값 ( Default )

3. 식별자(Identifier) 3-1) 식별자 정의 : 한 실체내의 특정 인스턴스를 구분할 수 있는 단일 속성 또는 속성 그 룹을(복합키->다만 복합키 대신 설계 속성을 사용-JOIN시 불편) 말함. 식별자 업무규칙은 한 실체내의 인스턴스를 유일하게 구분할 수 있어 야 하며 모든 실체는 반드시 하나 이상의 식별자를 보유하여야 하며 복수개의 식별자도 보유할 수 있다.

3-2) 식별자 종류(예:과정,교육생 테이블에서 확인) 1) 후보 식별자 ( Candidate Identifier ) : 실체의 각 인스턴스를 유일하게 식별하기 위하여 제공되는 속성이나 속성의 그룹을 말함. 2) 주 식별자 ( Primary Identifier ) : 실체의 각 인스턴스를 유일하게 식별 하는데 가장 적합한 식별자로 후보 식별자에서 선택한 속성이나 속성 의 그룹을 주 식별자로 정의할 수 있다. (한 개의 속성, 속성의 조합, 관계의 조합, 속성과 관계의 조합 )  주 식별자 선별요령 : 실체를 대표할 수 있을 것, 업무적인 활용도 가 높을 것, 길이가 짧을 것 (예:과정,교육생 테이블에서 확인)  주 식별자는 기본적으로 Not Null과 No Duplicate속성을 갖는다. 3) 부 식별자 ( Alternate Identifier ) : 후보 식별자 중 주 식별자로 선정되 지 않은 식별자를 말한다. 예) 사원 테이블의 주민번호 4) 외부 식별자 ( Foreign Identifier ) : 두 실체간의 관계 형성을 통해 부 모 실체의 주 식별자가 자식 실체에 전이된 식별자.

후보키 ( Candidate Key ) 기본키 (Primary Key) 대체키 (Alternate Key) 5) 대리 식별자 ( Surrogate Key ) : 복합 키가 여러 개의 컬럼으로 구성된 경우 이를 대체하기 위해 사용되는 인위적으로 정의한 컬럼이다.  후보키와 기본키 그리고 대체키의 관계 후보키 ( Candidate Key ) 기본키 (Primary Key) 대체키 (Alternate Key)

2-(4) 식별자 도출 엔티티 식별자 학년 학년코드 반 반코드 과목 과목코드

4장. 개념적 데이터베이스 모델링 관계 ( Relational ) 1-1. 관계 정의 : 두개의 실체간에 명명되어진 의미있는 연결이며 두 실체간에 업무적 인 연관성을 나타낸다. 회원은 비디오를 대여한다. 비디오는 회원에게 대여 되어진다. 고객은 상품을 주문한다. 상품은 고객에게 주문되어진다. 대여 회원 비디오 주문 고객 상품

관계도출 (예) ① 학년-반 엔티티 학년 소속 반 각 학년에는 반이 각 반은 반드시 학년에 하나 이상의 하나의 각 학년에는 반이 각 반은 반드시 학년에 하나 이상의 하나의 소속되어질지도 모른다. 소속되어져야만 한다. 일대다(1:N) 학년 소속 반

관계도출 (예) ② 학년-과목 엔티티 학년 개설 과목 각 학년에서는 과목이 각 과목은 학년에 하나 이상의 각 학년에서는 과목이 각 과목은 학년에 하나 이상의 개설되어질지도 모른다. 규정수업시간 학년 개설 과목 다대다(N:M)

관계도출 (예) ③ 과목-반 엔티티 반 수업 과목 각 반에는 과목이 각 과목은 반에서 하나 이상의 수업되어질지도 모른다. 각 반에는 과목이 각 과목은 반에서 하나 이상의 수업되어질지도 모른다. 다대다(N:M) 반 수업 과목 수업일자 수업시간

1-2. 차수성 정의 차수란 두 Entity간에 Tuple(레코드)의 매핑 관계를 말한다 : 관계를 맺고 있는 두 테이블간에 레코드가 매칭되는 유형을 정의한 것으로 1 : 1, 1 : N, N : N관계가 있다. 일대일 : A테이블에 있는 한 레코드는 B테이블에 있는 한 레코드와 일치하는 관계 이다. 1 관리한다 1 사원 부서 사 원 부 서 홍길동 박찬호 박세리 선동렬 … 총무부 전산부 …

일대다 : A테이블에 있는 각각의 레코드는 B테이블에 있는 하나 이상의 레코드와 일치하나 B테이블에 있는 레코드는 A 테이블에 있는 레코드와 단지 하나 만이 일치하는 관계이다. 소속 부서 사원 부 서 사 원 총무부 전산부 인사부 … 홍길동 박찬호 박세리 선동렬 …

다대다 : A테이블에 있는 각각의 레코드는 B테이블에 있는 하나 이상의 레코드와 일치하고 B테이블에 있는 레코드도 A테이블에 있는 하나 이상 의 레코드와 일치하는 관계이다. 주문 고객 상품 고 객 상 품 홍길동 박찬호 … 박세리 새우깡 짱구 … 라면

선택성 표기법 1-3. 선택성 : 두 실체 간에 관계가 설정되었을 때, 항상 두 실체의 모든 인스턴스 간에 관계가 존재해야 하는지 아니면 모든 인스턴스에 대해 존재할 필 요가 없는지를 나타내는 부분이다. 각 부서는 한명 이상의 사원을 배치 받을지도 모른다. 각 사원은 부서에 반드시 소속되어야 한다. 소속 사원 부서 Optional Mandatory 선택성 표기법

1-4. 관계의 표현 일대일 일대다 Exactly 5 실 체 1 실 체 2 실 체 1 실 체 2 실 체 1 실 체 2 실 체 1 실 체 2 일대일 실 체 1 실 체 2 실 체 1 실 체 2 일대다 실 체 1 실 체 2 실 체 1 실 체 2 Exactly 실 체 1 실 체 2 5

2. 개념적 데이터베이스 모델링 정리 업무 분석 실체 도출 속성 도출 속성 중 식별자 도출 관계 설정 관계 차수 설정 부서코드 사원번호 이름 부서명 소속 부서 사원 주소 위치 성별 입사일 업무 분석 실체 도출 속성 도출 속성 중 식별자 도출 관계 설정 관계 차수 설정 선택성 파악 요구사항정의서에서 ERD도출

실습) 데이타모델링-요구사항정의서-예제.doc