Database
- 데이터베이스3강 2023.05.01
- 데이터베이스 2강 2023.04.29
- 데이터베이스 1강 2023.04.20
- sql설치 및 설치환경 구현 2023.04.10
데이터베이스3강
데이터베이스 2강
※관계 데이터 모델
■용어 설명
릴레이션 | 관계 | 스키마(내포) | 인스턴스(외연) | 도메인 | 차수 | 카디날리티 |
행과 열로 구성된 테이블 | 릴레이션과 데이터 , 릴레이션과 릴레이션의 관계 | 속성,특징 | 데이터,내용 | 속성이 가질 수 있는 값 | 속성의 개수 | 튜플의 수 |
■릴레이션의 특징
●속성
1.속성은 하나씩만 있어야하며
2.서로 다른 이름,
3.한 속성에서는 같은 도메인값(자료형)
4.순서는 상관없다.
●투플
1.중복은 허용하지 않는다
2.순서는 상관없다
■키
데이터베이스에서 키는 특정 투플을 식별할 때 사용하는 속성 혹은 속성의 집합이다.
●슈퍼키
투플을 유일하게 식별할 수 있는 하나의 속성 혹은 속성의 집합
●후보키
투플을 유일하게 식별할 수 있는 최소의 집합
●기본키
여러 후보키 중 하나를 선정하여 대표로 삼는 키
※기본키 선정 시 고려사항
1.릴레이션 내 투플을 식별할 수 있는 고유한 값을 가져야함
2.NULL 값은 허용하지 않음
●대리키
마땅한 기본키가 없을 때 일련번호 같은 가상의 속성을 만들어 기본키로 만드는것
인조키라고 함
●대체키
기본키로 선정되지않은 후보키
●외래키
관계에 사용, 다른 테이블의 기본키를 참조하는키
※외래키 선정시 고려사항
1.도메인 같아야하고 참조되는 값이 변하면 참조하는 값도 변해야한다.
2.NULL값이 들어가도 되며,중복이 가능하고, 자기자신을 참조할 수 있으며 기본키의 일부도 가능하다.
■데이터무결성
●도메인 무결성 제약조건
투플이 각 속성의 도메인에 지정된 값만을 가져야 한다는 조건
●개체 무결성 제약조건
기본키 제약조건
●참조 무결성 제약조건
자식 릴레이션의 외래키는 부모 릴레이션의 기본키와 도메인이 동일해야 하며, 자식 릴레이션의 값이 변경될 때 부모 릴레이션의 제약을 받는다는 것
->삭제나 수정시 부모 릴레이션과 자식 릴레이션 모두 영향이 있다
■관계대수
어떻게 질의를 수행하는가 -> 절차적인 언어
●관계대수식
연산자<조건> 릴레이
●관계대수 연산자
SELECT | δ(시그마) | δ<조건>(R) | 조건 선택 |
PROJECT | π(파이) | π<리스트>(R) | 속성 별 리스트 가져오기 |
JOIN | ⋈(보타이) | R⋈<조건>S | 조건에 맞는 두 릴레이션 가져오기 |
DIVISION | ÷(나누기) | R÷S | S에 해당하는 값을 가지고 있는 행가져오기 |
●각 연산 및 연산별 차수/ 카디널리티 변화
●합집합
중복제거 후 두 릴레이션을 합침
->연산 후 차수가 같지만 카디널리티는 같거나 작다.
●교집합
두 릴레이션이 공통으로 가지고 있는 것을 보여줌
->연산 후 차수는 같고 카디널리티는 두 릴레이션의 어느것 보다 크지않다
●차집합
두 릴레이션에서 겹치지않는 부분 보여줌
->연산 후 차수는 같다
-> 카디널리티 R-S일경우는 R과 같거나 작고 S-R이면 S와 같거나 작다.
●카티션프로덕트
->전체x전체 연산
->연산 후 두 릴레이션의 차수를 더한게 차수이고 카디널리티는 두 릴레이션의 카디널리티의 곱이다.
■조인연산
두 릴레이션의 공통 속성을 기준으로 속성 값이 같은 투플을 수평으로 결합하는 연산
R⋈<조건>S
->동등조인 조건에서 =연산자를 사용한 조인
●자연조인
동등조인에서 중복되는 값을 제외한 연산
R⋈N<조건>S
●외부조인선이 있는 쪽에 있는값 모두 출력(상대 릴레이션이랑 맞췄을 때 NULL값이여도 출력)
데이터베이스 1강
1. 데이터, 정보, 지식
데이터= 값
정보= 데이터 + 의미
지식-> 정보 + 사물이나 현상에 대한 이해
2. 데이터베이스
데이터베이스란 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한
운영데이터의 집합
=>데이터베이스의 개념
1. 통합된 데이터
2. 저장된 데이터
3. 운영 데이터
4. 공용 데이터
■데이터 베이스의 특징
1. 실시간 접근성
2. 계속적인 변화
3. 동시공유
4. 내용에 따른 참조
※ 파일 시스템 vs 데이터베이스 시스템
파일 단위로 데이터 관리(word, exel) | DBMS로 데이터관리 |
파일을 직접 다루기 때문에 데이터의 일관성이 훼손될 수 있음 | 응용프로그램이 DBMS에 파일 접근을 요청 |
※ 파일시스템은 데이터가 바뀌면 다시 컴파일해야하고 하나 하나 다 수정해야하는데 이럴 경우 수정이 안된 파일이 있을 수 있다.
DBMS 장점
1. 데이터 중복 최소화
2. 데이터 일관성 유지
3. 데이터 독립성 유지
■데이터베이스 구성
데이터 베이스는 스키마로 구성된다.
※스키마 => 개념스키마, 외부스키마, 내부스키마 => 전체적인 구조
※개념스키마
데이터베이스의 전체적인 구조
●외부스키마
사용자가 데이터베이스를 사용할 때 상호작용하는 부분
●내부스키마
데이터가 데이터베이스에 어떻게 저장되는지
●외부 / 개념 매핑
데이터가 매핑 될때는 가상 테이블로 매핑된다.
■논리적, 물리적 데이터 독립성
●논리적 데이터 독립성
외부스키마 - 개념 스키마 사이의 독립성
개념 스키마가 변경되어도 외부 스키마(응용 프로그램)에는 영향을 미치지 않도록 하는것
●물리적 데이터 독립성
개념스키마- 내부 스키마 사이의 독립성
저장장치 구조 변경과 같은 내부 스키마가 변경되어도 개념 스키마에 영향을 미치지 않도록 하는것
sql설치 및 설치환경 구현
1. 오라클 19c 설치
https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#19c
2. 압축을 푼 후 setup.exe 실행
실습할 데이터베이스에 해당하는 아이디 생성후 마침
3. sql Developer 설치
https://www.oracle.com/database/sqldeveloper/technologies/download/