SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Part 1. 데이터 모델
Chapter3. 관계형 모델
201515. 5. 10 STG 박하은
기본 구조와 DB 스키마
• 관계형 데이터베이스란 테이블들의 모임을 뜻한다.
• 릴레이션(Relation) : 각 행의 일련의 값들 사이의 관계
• 테이블 : 관계들의 모임
• 속성(Attribute) : 열 제목, 컬럼
• 도메인 : 각 속성마다의 값들의 집합
• n-투플(a1, a2, …, a n) :
수학적 개념 중 하나
레코드와 비슷한 개념
n에 컬럼의 개수
a1, a2, …, a n에 각 컬럼의 이름
기본 구조와 DB 스키마
TB_ETRIBER 테이블에서 name, id, pw 컬럼이 있을 때 각각에
대한 릴레이션이
name = {박하은1, 박하은2, 박하은3}
id = {phe1, phe2, phe3}
pw = {1111, 2222, 3333} 와 같다면
name x id x pw에 대한 릴레이션은
R = {(박하은1, 박하은2, 박하은3),
(phe1, phe2, phe3),
(1111, 2222, 3333)} 이며 그에 따른 스키마는
TB_ETRIBER-schema = (name, id, pw) 이다.
키(key)
• 키 : 릴레이션에서 다른 데이터와 구분하기 위한 유일한 값을 가지
는 속성(컬럼) 또는 필드의 집합
• 키의 종류
- 후보키 : 유일성과 최소성을 만족하는 여러 컬럼들
기본키의 후보
*유일성 : 중복값이 없는 것
*최소성 : 식별을 위해 꼭 있어야하는 요소
- 기본키 : 후보키 중 선정되어 사용하는 키
- 대체키 : 후보키 중 기본키로 선택되지 않은 나머지 키
- 슈퍼키 : 복합키라고도 함
2개 이상의 열을 후보키로 만들어 기본키로써 사용
키(key)
ID 이름 생년월일 사번 주민등록번호
1 박하은1 1995-10-19 1001 951019-2***
2 박하은2 1995-10-20 1002 951020-2***
3 박하은3 1995-10-21 1003 951021-2***
슈퍼키기본키 후보키 대체키
질의어
• 사용자가 데이터베이스로부터 정보를 요청하는 언어
• 절차식 : 원하는 결과를 얻기 위해 어떤 연산을 수행할지 사용자가
시스템에 알려줌(관계 대수)
• 비절차식 : 사용자가 정보를 얻기 위한 구체적 수행 과정이 아닌 어
떤 정보를 원하는지에 대해서만 기술(투플관계해석, 도메인관계해석)
관계 대수
• 절차식 언어의 종류
• 선택, 추출, 합집합, 차집합, 카티션곱, 재명명의 6가지 기본 연산자
• 연산자는 하나 이상의 릴레이션을 통해 새로운 릴레이션을 결과로
생성한다.
관계 대수 – 선택 연산
• 표기법 : P(r)
• P에는 아래와 같은 식이 들어간다
<애트리뷰트> = <애트리뷰트> 또는 <상수>

>

<

• 여러가지 식을 (and), (or), (not)으로 연결하여 나타내기도 한
다.
관계 대수 – 선택 연산
Ex)
릴레이션 r :
A=BD>5(r) :
A와 B가 같다 and D가 5보다 크다
A B C D
  1 7
  5 7
  12 3
  23 10
A B C D
  1 7
  23 10
관계 대수 – 추출 연산
• 표기법 : A1, A2, …, A k(r)
• A1, A2, …, A k 는 속성이고 r은 릴레이션이다.
• 명시된 애트리뷰트를 중복값을 제외하여 나타낸다.
Ex)
릴레이션 r :
A, C(r) :
A와 C 속성의 값(중복 제외)
A B C
 10 1
 20 1
 30 1
 40 2
A C
 1
 1
 1
 2
A C
 1
 1
 2
=
관계 대수 – 합집합 연산
• 표기법 : r  s
• r과 s는 같은 항(속성 수가 같음)을 가져야 한다.
• 속성의 도메인은 양립할 수 있어야 한다.
즉 r의 a라는 속성은 s의 d라는 속성과 같은 타입의 값을 다룬다.
Ex)
릴레이션 r,s :
r  s :
r과 s의 값을 한 릴레이션으로 합한 값
A B
 1
 2
 1
A B
 2
 3
A B
 1
 2
 1
 3
관계 대수 – 차집합 연산
• 표기법 : r - s
• r과 s는 같은 항(속성 수가 같음)을 가져야 한다.
• 속성의 도메인은 양립할 수 있어야 한다.
즉 r의 a라는 속성은 s의 d라는 속성과 같은 타입의 값을 다룬다.
Ex)
릴레이션 r,s :
r - s :
r을 기준으로 s에 있는 값을 빼서 나타냄
A B
 1
 2
 1
A B
 2
 3
A B
 1
 1
관계 대수 – 카티션 곱 연산
• 표기법 : r x s
• r과 s는 다른 속성을 가져야 한다.
Ex)
릴레이션 r,s :
r x s :
r과 s를 합하여 나타낸 값
A B
 1
 2
C D E
 10 +
 10 +
 20 -
 10 -
A B C D E
 1  10 +
 1  10 +
 1  20 -
 1  10 -
 2  10 +
 2  10 +
 2  20 -
 2  10 -
<THANK YOU>

Contenu connexe

Tendances

Binary Search
Binary SearchBinary Search
Binary Searchskku_npc
 
R과 기초통계 : 01.자료다루기
R과 기초통계 : 01.자료다루기R과 기초통계 : 01.자료다루기
R과 기초통계 : 01.자료다루기Yoonwhan Lee
 
성공적인웹프로그래밍
성공적인웹프로그래밍성공적인웹프로그래밍
성공적인웹프로그래밍dgmong
 
R의 자료구조
R의 자료구조R의 자료구조
R의 자료구조yu yeon su
 
R 프로그래밍 기본 문법
R 프로그래밍 기본 문법R 프로그래밍 기본 문법
R 프로그래밍 기본 문법Terry Cho
 
Sqrt decomposition
Sqrt decompositionSqrt decomposition
Sqrt decompositionHongjun Jang
 
4. dynamic programming(1)
4. dynamic programming(1)4. dynamic programming(1)
4. dynamic programming(1)Hongjun Jang
 
12장 함수 조합 다시 보기4
12장 함수 조합 다시 보기412장 함수 조합 다시 보기4
12장 함수 조합 다시 보기4cosmosyc
 
R 기본-데이타형 소개
R 기본-데이타형 소개R 기본-데이타형 소개
R 기본-데이타형 소개Terry Cho
 

Tendances (10)

Binary Search
Binary SearchBinary Search
Binary Search
 
R과 기초통계 : 01.자료다루기
R과 기초통계 : 01.자료다루기R과 기초통계 : 01.자료다루기
R과 기초통계 : 01.자료다루기
 
성공적인웹프로그래밍
성공적인웹프로그래밍성공적인웹프로그래밍
성공적인웹프로그래밍
 
R의 자료구조
R의 자료구조R의 자료구조
R의 자료구조
 
R 기초 II
R 기초 IIR 기초 II
R 기초 II
 
R 프로그래밍 기본 문법
R 프로그래밍 기본 문법R 프로그래밍 기본 문법
R 프로그래밍 기본 문법
 
Sqrt decomposition
Sqrt decompositionSqrt decomposition
Sqrt decomposition
 
4. dynamic programming(1)
4. dynamic programming(1)4. dynamic programming(1)
4. dynamic programming(1)
 
12장 함수 조합 다시 보기4
12장 함수 조합 다시 보기412장 함수 조합 다시 보기4
12장 함수 조합 다시 보기4
 
R 기본-데이타형 소개
R 기본-데이타형 소개R 기본-데이타형 소개
R 기본-데이타형 소개
 

En vedette

데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은ETRIBE_STG
 
디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론Baro Kim
 
데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은ETRIBE_STG
 
성능 좋은 SQL 작성법
성능 좋은 SQL 작성법성능 좋은 SQL 작성법
성능 좋은 SQL 작성법Devgear
 
서울열린데이터광장Db활용과 big data
서울열린데이터광장Db활용과 big data서울열린데이터광장Db활용과 big data
서울열린데이터광장Db활용과 big dataSung Woo Leem
 
120515 security framework2.20
120515 security framework2.20120515 security framework2.20
120515 security framework2.20skccsocial
 
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03Devgear
 
톰캣 #04-환경설정
톰캣 #04-환경설정톰캣 #04-환경설정
톰캣 #04-환경설정GyuSeok Lee
 
톰캣 #07-host
톰캣 #07-host톰캣 #07-host
톰캣 #07-hostGyuSeok Lee
 
톰캣 #05+b-root-deployment
톰캣 #05+b-root-deployment톰캣 #05+b-root-deployment
톰캣 #05+b-root-deploymentGyuSeok Lee
 
톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deployment톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deploymentGyuSeok Lee
 
톰캣 #02-설치환경
톰캣 #02-설치환경톰캣 #02-설치환경
톰캣 #02-설치환경GyuSeok Lee
 
톰캣 #05-배치
톰캣 #05-배치톰캣 #05-배치
톰캣 #05-배치GyuSeok Lee
 
20130329 tomcat ssl
20130329 tomcat ssl20130329 tomcat ssl
20130329 tomcat sslSukjin Yun
 
Android version
Android version Android version
Android version ETRIBE_STG
 
리눅스에 대하여
리눅스에 대하여리눅스에 대하여
리눅스에 대하여ETRIBE_STG
 
머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가ETRIBE_STG
 
표기법을 아시나요?
표기법을 아시나요?표기법을 아시나요?
표기법을 아시나요?ETRIBE_STG
 

En vedette (20)

데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은
 
디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론디지털 인문학 데이터베이스 개론
디지털 인문학 데이터베이스 개론
 
데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은데이터베이스 시스템 chapter2_STG박하은
데이터베이스 시스템 chapter2_STG박하은
 
성능 좋은 SQL 작성법
성능 좋은 SQL 작성법성능 좋은 SQL 작성법
성능 좋은 SQL 작성법
 
서울열린데이터광장Db활용과 big data
서울열린데이터광장Db활용과 big data서울열린데이터광장Db활용과 big data
서울열린데이터광장Db활용과 big data
 
120515 security framework2.20
120515 security framework2.20120515 security framework2.20
120515 security framework2.20
 
Mymysql basic sql
Mymysql basic sqlMymysql basic sql
Mymysql basic sql
 
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
 
톰캣 #04-환경설정
톰캣 #04-환경설정톰캣 #04-환경설정
톰캣 #04-환경설정
 
톰캣 #07-host
톰캣 #07-host톰캣 #07-host
톰캣 #07-host
 
톰캣 #05+b-root-deployment
톰캣 #05+b-root-deployment톰캣 #05+b-root-deployment
톰캣 #05+b-root-deployment
 
톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deployment톰캣 #05+a-배치-parallel deployment
톰캣 #05+a-배치-parallel deployment
 
톰캣 #02-설치환경
톰캣 #02-설치환경톰캣 #02-설치환경
톰캣 #02-설치환경
 
톰캣 #05-배치
톰캣 #05-배치톰캣 #05-배치
톰캣 #05-배치
 
20130329 tomcat ssl
20130329 tomcat ssl20130329 tomcat ssl
20130329 tomcat ssl
 
Android version
Android version Android version
Android version
 
리눅스에 대하여
리눅스에 대하여리눅스에 대하여
리눅스에 대하여
 
머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가머큐리얼저장소추가 사용자추가 권한추가
머큐리얼저장소추가 사용자추가 권한추가
 
표기법을 아시나요?
표기법을 아시나요?표기법을 아시나요?
표기법을 아시나요?
 
Objc literals
Objc literalsObjc literals
Objc literals
 

Similaire à 데이터베이스 시스템 chapter3_STG박하은

R을 이용한 데이터 분석
R을 이용한 데이터 분석R을 이용한 데이터 분석
R을 이용한 데이터 분석simon park
 
R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작Terry Cho
 
통계자료분석을 ㅇ
통계자료분석을 ㅇ통계자료분석을 ㅇ
통계자료분석을 ㅇYoonwhan Lee
 
Data Mining with R CH1 요약
Data Mining with R CH1 요약Data Mining with R CH1 요약
Data Mining with R CH1 요약Sung Yub Kim
 
2.supervised learning
2.supervised learning2.supervised learning
2.supervised learningHaesun Park
 
[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬종빈 오
 
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)Amazon Web Services Korea
 
파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301Yong Joon Moon
 
2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)
2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)
2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)JiandSon
 
파이썬정리 20160130
파이썬정리 20160130파이썬정리 20160130
파이썬정리 20160130Yong Joon Moon
 
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기종빈 오
 
R 스터디 첫번째
R 스터디 첫번째R 스터디 첫번째
R 스터디 첫번째Jaeseok Park
 
HTML Form과 배열
HTML Form과 배열HTML Form과 배열
HTML Form과 배열Yoonwhan Lee
 
전자해도세미나
전자해도세미나전자해도세미나
전자해도세미나Jiyoon Kim
 

Similaire à 데이터베이스 시스템 chapter3_STG박하은 (18)

R을 이용한 데이터 분석
R을 이용한 데이터 분석R을 이용한 데이터 분석
R을 이용한 데이터 분석
 
R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작
 
통계자료분석을 ㅇ
통계자료분석을 ㅇ통계자료분석을 ㅇ
통계자료분석을 ㅇ
 
Data Mining with R CH1 요약
Data Mining with R CH1 요약Data Mining with R CH1 요약
Data Mining with R CH1 요약
 
2.supervised learning
2.supervised learning2.supervised learning
2.supervised learning
 
Regex
RegexRegex
Regex
 
[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬
 
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)
 
파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301
 
PHP 기초 문법
PHP 기초 문법PHP 기초 문법
PHP 기초 문법
 
2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)
2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)
2014.07.26 KSUG와 지앤선이 함께하는 테크니컬 세미나 - 나의 첫번째 자바8 람다식 (정대원)
 
파이썬정리 20160130
파이썬정리 20160130파이썬정리 20160130
파이썬정리 20160130
 
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
 
R 스터디 첫번째
R 스터디 첫번째R 스터디 첫번째
R 스터디 첫번째
 
Apply교육
Apply교육Apply교육
Apply교육
 
HTML Form과 배열
HTML Form과 배열HTML Form과 배열
HTML Form과 배열
 
업무 자동화
업무 자동화업무 자동화
업무 자동화
 
전자해도세미나
전자해도세미나전자해도세미나
전자해도세미나
 

Plus de ETRIBE_STG

데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은ETRIBE_STG
 
Spring Security
Spring SecuritySpring Security
Spring SecurityETRIBE_STG
 
Springsecurity
SpringsecuritySpringsecurity
SpringsecurityETRIBE_STG
 
지적재산권
지적재산권지적재산권
지적재산권ETRIBE_STG
 
Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작ETRIBE_STG
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxpETRIBE_STG
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxpETRIBE_STG
 
구글맵 JavaScript API
구글맵 JavaScript API구글맵 JavaScript API
구글맵 JavaScript APIETRIBE_STG
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리ETRIBE_STG
 
피들러 신명대
피들러 신명대피들러 신명대
피들러 신명대ETRIBE_STG
 
Google analytics
Google analyticsGoogle analytics
Google analyticsETRIBE_STG
 
대표적인 오픈 소스 라이센스 요약 - 장형주
대표적인 오픈 소스 라이센스 요약 - 장형주대표적인 오픈 소스 라이센스 요약 - 장형주
대표적인 오픈 소스 라이센스 요약 - 장형주ETRIBE_STG
 
애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능
애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능
애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능ETRIBE_STG
 
게임 기획서 작성하기 - 송철헌
게임 기획서 작성하기 - 송철헌게임 기획서 작성하기 - 송철헌
게임 기획서 작성하기 - 송철헌ETRIBE_STG
 
좋은개발자가되는8가지방법 - 박하은
좋은개발자가되는8가지방법 - 박하은좋은개발자가되는8가지방법 - 박하은
좋은개발자가되는8가지방법 - 박하은ETRIBE_STG
 
리눅스와 스팀 - 황성원
리눅스와 스팀 - 황성원리눅스와 스팀 - 황성원
리눅스와 스팀 - 황성원ETRIBE_STG
 
타이젠 어디까지 왔나 - 김진용
타이젠 어디까지 왔나 -  김진용타이젠 어디까지 왔나 -  김진용
타이젠 어디까지 왔나 - 김진용ETRIBE_STG
 
늑대가 죽은 이유 - 허성
늑대가 죽은 이유 - 허성늑대가 죽은 이유 - 허성
늑대가 죽은 이유 - 허성ETRIBE_STG
 

Plus de ETRIBE_STG (20)

데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은데이터베이스 시스템 chapter4_STG박하은
데이터베이스 시스템 chapter4_STG박하은
 
Spring Security
Spring SecuritySpring Security
Spring Security
 
Springsecurity
SpringsecuritySpringsecurity
Springsecurity
 
지적재산권
지적재산권지적재산권
지적재산권
 
AWS
AWSAWS
AWS
 
Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작Wix - 웹 홈페이지 제작
Wix - 웹 홈페이지 제작
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxp
 
모바일에서 Ble pxp
모바일에서 Ble pxp모바일에서 Ble pxp
모바일에서 Ble pxp
 
구글맵 JavaScript API
구글맵 JavaScript API구글맵 JavaScript API
구글맵 JavaScript API
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리
 
Swing browser
Swing browserSwing browser
Swing browser
 
피들러 신명대
피들러 신명대피들러 신명대
피들러 신명대
 
Google analytics
Google analyticsGoogle analytics
Google analytics
 
대표적인 오픈 소스 라이센스 요약 - 장형주
대표적인 오픈 소스 라이센스 요약 - 장형주대표적인 오픈 소스 라이센스 요약 - 장형주
대표적인 오픈 소스 라이센스 요약 - 장형주
 
애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능
애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능
애플이 스위프트 프로그래밍 언어를 위해 "훔친" 몇 가지 기능
 
게임 기획서 작성하기 - 송철헌
게임 기획서 작성하기 - 송철헌게임 기획서 작성하기 - 송철헌
게임 기획서 작성하기 - 송철헌
 
좋은개발자가되는8가지방법 - 박하은
좋은개발자가되는8가지방법 - 박하은좋은개발자가되는8가지방법 - 박하은
좋은개발자가되는8가지방법 - 박하은
 
리눅스와 스팀 - 황성원
리눅스와 스팀 - 황성원리눅스와 스팀 - 황성원
리눅스와 스팀 - 황성원
 
타이젠 어디까지 왔나 - 김진용
타이젠 어디까지 왔나 -  김진용타이젠 어디까지 왔나 -  김진용
타이젠 어디까지 왔나 - 김진용
 
늑대가 죽은 이유 - 허성
늑대가 죽은 이유 - 허성늑대가 죽은 이유 - 허성
늑대가 죽은 이유 - 허성
 

데이터베이스 시스템 chapter3_STG박하은

  • 1. Part 1. 데이터 모델 Chapter3. 관계형 모델 201515. 5. 10 STG 박하은
  • 2. 기본 구조와 DB 스키마 • 관계형 데이터베이스란 테이블들의 모임을 뜻한다. • 릴레이션(Relation) : 각 행의 일련의 값들 사이의 관계 • 테이블 : 관계들의 모임 • 속성(Attribute) : 열 제목, 컬럼 • 도메인 : 각 속성마다의 값들의 집합 • n-투플(a1, a2, …, a n) : 수학적 개념 중 하나 레코드와 비슷한 개념 n에 컬럼의 개수 a1, a2, …, a n에 각 컬럼의 이름
  • 3. 기본 구조와 DB 스키마 TB_ETRIBER 테이블에서 name, id, pw 컬럼이 있을 때 각각에 대한 릴레이션이 name = {박하은1, 박하은2, 박하은3} id = {phe1, phe2, phe3} pw = {1111, 2222, 3333} 와 같다면 name x id x pw에 대한 릴레이션은 R = {(박하은1, 박하은2, 박하은3), (phe1, phe2, phe3), (1111, 2222, 3333)} 이며 그에 따른 스키마는 TB_ETRIBER-schema = (name, id, pw) 이다.
  • 4. 키(key) • 키 : 릴레이션에서 다른 데이터와 구분하기 위한 유일한 값을 가지 는 속성(컬럼) 또는 필드의 집합 • 키의 종류 - 후보키 : 유일성과 최소성을 만족하는 여러 컬럼들 기본키의 후보 *유일성 : 중복값이 없는 것 *최소성 : 식별을 위해 꼭 있어야하는 요소 - 기본키 : 후보키 중 선정되어 사용하는 키 - 대체키 : 후보키 중 기본키로 선택되지 않은 나머지 키 - 슈퍼키 : 복합키라고도 함 2개 이상의 열을 후보키로 만들어 기본키로써 사용
  • 5. 키(key) ID 이름 생년월일 사번 주민등록번호 1 박하은1 1995-10-19 1001 951019-2*** 2 박하은2 1995-10-20 1002 951020-2*** 3 박하은3 1995-10-21 1003 951021-2*** 슈퍼키기본키 후보키 대체키
  • 6. 질의어 • 사용자가 데이터베이스로부터 정보를 요청하는 언어 • 절차식 : 원하는 결과를 얻기 위해 어떤 연산을 수행할지 사용자가 시스템에 알려줌(관계 대수) • 비절차식 : 사용자가 정보를 얻기 위한 구체적 수행 과정이 아닌 어 떤 정보를 원하는지에 대해서만 기술(투플관계해석, 도메인관계해석)
  • 7. 관계 대수 • 절차식 언어의 종류 • 선택, 추출, 합집합, 차집합, 카티션곱, 재명명의 6가지 기본 연산자 • 연산자는 하나 이상의 릴레이션을 통해 새로운 릴레이션을 결과로 생성한다.
  • 8. 관계 대수 – 선택 연산 • 표기법 : P(r) • P에는 아래와 같은 식이 들어간다 <애트리뷰트> = <애트리뷰트> 또는 <상수>  >  <  • 여러가지 식을 (and), (or), (not)으로 연결하여 나타내기도 한 다.
  • 9. 관계 대수 – 선택 연산 Ex) 릴레이션 r : A=BD>5(r) : A와 B가 같다 and D가 5보다 크다 A B C D   1 7   5 7   12 3   23 10 A B C D   1 7   23 10
  • 10. 관계 대수 – 추출 연산 • 표기법 : A1, A2, …, A k(r) • A1, A2, …, A k 는 속성이고 r은 릴레이션이다. • 명시된 애트리뷰트를 중복값을 제외하여 나타낸다. Ex) 릴레이션 r : A, C(r) : A와 C 속성의 값(중복 제외) A B C  10 1  20 1  30 1  40 2 A C  1  1  1  2 A C  1  1  2 =
  • 11. 관계 대수 – 합집합 연산 • 표기법 : r  s • r과 s는 같은 항(속성 수가 같음)을 가져야 한다. • 속성의 도메인은 양립할 수 있어야 한다. 즉 r의 a라는 속성은 s의 d라는 속성과 같은 타입의 값을 다룬다. Ex) 릴레이션 r,s : r  s : r과 s의 값을 한 릴레이션으로 합한 값 A B  1  2  1 A B  2  3 A B  1  2  1  3
  • 12. 관계 대수 – 차집합 연산 • 표기법 : r - s • r과 s는 같은 항(속성 수가 같음)을 가져야 한다. • 속성의 도메인은 양립할 수 있어야 한다. 즉 r의 a라는 속성은 s의 d라는 속성과 같은 타입의 값을 다룬다. Ex) 릴레이션 r,s : r - s : r을 기준으로 s에 있는 값을 빼서 나타냄 A B  1  2  1 A B  2  3 A B  1  1
  • 13. 관계 대수 – 카티션 곱 연산 • 표기법 : r x s • r과 s는 다른 속성을 가져야 한다. Ex) 릴레이션 r,s : r x s : r과 s를 합하여 나타낸 값 A B  1  2 C D E  10 +  10 +  20 -  10 - A B C D E  1  10 +  1  10 +  1  20 -  1  10 -  2  10 +  2  10 +  2  20 -  2  10 -