본문 바로가기

ORACLE11g

[6장] 키의 개념 및 종류 1. 슈퍼키(Super Key) ・속성들의 집합으로 구성된 키.・유일성은 만족하나, 최소성은 만족하지 못한다. 2. 후보키(Candidate Key) ・유일성과 최소성을 만족하는 기본키를 제외한 키. 3. 기본키(Primary Key) ・후보키 중에서 특별히 선정된 키.・Null값과 중복값을 가질 수 없다.・유일성과 최소성을 가진다.・튜플을 식별하기 위해 반드시 필요한 키 이다. 4. 대체키(Alternate Key) ・기본키를 제외한 나머지 후보키 5. 외래키(Foreign Key) ・다른 릴레이션의 기본키를 참조하는 속성.・관계를 표현할 때 사용. 더보기
[5장] 관계형 데이터 모델 1. 관계형 데이터 구조 : 릴레이션 ・데이터를 원자 값(Atomic Value)으로 갖는 이차원의 테이블.・논리적 구조를 나타냄・릴레이션 스키마(구조)와 릴레이션 인스턴스(실제 값)로 구성된다.・한 속성 안에서 원자 값들의 집합을 도메인이라고 한다. 2. ER모델 → 관계형 데이터 모델 변환 ・ER모델을 릴레이션 스키마로 변환 (Mapping Rule)・개체 → 개체 릴레이션・관계 → 관계 릴레이션・속성 → 컬럼(Column)・식별자 → 기본키・관계 → 외래키・N:M의 관계일 경우에는 교차 릴레이션(Intersection Relation)을 생성한다. ※ 식별 관계・비식별 관계 ・식별 관계(Identifying)― A 개체의 기본키가 B 개체의 외래키이면서 기본키인 관계.― 실선으로 표시함. ・비식별 .. 더보기
[4장] 데이터베이스 설계 1. 데이터베이스 설계의 개념 ・DB의 구조. 즉, DB 스키마를 개발하는 과정. ・요구 조건 분석 (Requirement Analysis)・개념적 설계 (Conceptual Design)・논리적 설계 (Logical Design)・물리적 설계 (Physical Design)・데이터베이스 구현 (Database Implementation) 위의 순서대로 수행된다. 2. 요구 조건 분석 ・요구 조건을 수집하고 분석하여 공식적인 요구 조건 명세(Requirement Specification)를 작성한다. 3. 개념적 설계 ・개념 스키마 모델링과 트랜젝션 모델링을 병행하여 수행한다.・집단화와 일반화가 있다. 4. 논리적 설계 ・현실 세계의 데이터를 컴퓨터가 처리할 수 있는 논리적 데이터 구조로 변환시킴.・논리.. 더보기
[3장] 스키마 (Schema) 1. 스키마의 개념 ・DB의 구조와 제약 조건에 관한 전반적인 명세 (Specification)・외부 스키마, 개념 스키마, 내부 스키마로 나뉜다. 2. 스키마의 특징 ・데이터의 구조적 특성을 의미한다.・데이터 사전(Data Dictionary)에 저장된다.・현실 세계의 한 부분을 표현한 것으로, 특정 데이터 모델을 이용해 만들어짐.・시간에 따라 불변・데이터의 논리적 단위에 명칭을 부여하고 그 의미를 기술함 3. 스키마의 3계층 외부 스키마 ・외부 사용자의 관점.・서브 스키마 (Sub Schema)라고도 부른다.・하나의 DB에 대해서 여러 개가 존재할 수 있다.・동일한 DB에 대해 서로 다른 관점을 정의할 수 있도록 허용. 개념 스키마 ・개체간의 관계와 제약조건을 명시함.・접근 권한, 보안 정책, 무결성.. 더보기
[2장] 데이터베이스 관리 시스템 (DBMS) 1. 데이터베이스 관리 시스템 (Database Management System)의 개념 ・사용자와 데이터베이스 사이에서 데이터베이스의 관리를 도와주는 소프트웨어.・종속성과 중복성의 문제를 해결하기 위한 시스템으로, 모든 응용프로그램이 DB를 공유할 수 있도록 한다. 2. DBMS의 필수 기능 ・정의 기능 (Definition Facility) : 구조와 제약조건등을 명시하는 기능 제공.・조작 기능 (Manipulation Facility) : 데이터 처리를 위한 삽입, 삭제, 갱신, 검색을 명시하는 기능 제공.・제어 기능 (Control Facility) : 무결성, 보안 및 권한 검사, 병행 제어 등을 명시하는 기능 제공. 3. DBMS의 장・단점 장점 단점 ・독립성이 보장된다.・중복을 피할 수 있다.. 더보기
[1장] 데이터베이스 개념 1. 데이터베이스의 정의 데이터베이스는 특정 조직의 업무를 수행하는 데 필요한 상호 관련된 데이터들의 모임으로 다음과 같이 정의할 수 있다. ・통합 데이터(Integrated Data) : 검색의 효율성을 위해 중복이 최소화 된 데이터의 모임・저장 데이터(Stored Data) : 컴퓨터가 접근 가능한 저장 매체에 저장된 데이터・운영 데이터(Operational Data) : 조직의 목적을 위해 존재 가치가 확실하고 반드시 필요한 데이터・공유 데이터(Shared Data) : 여러 응용 프로그램들이 공동으로 사용하는 데이터 2. 데이터베이스의 특징 ・실시간 접근성(Real Time Accessibility) : 사용자의 질의에 대하여 즉시 처리하여 응답하는 특징・계속적인 진화(Continuous Evol.. 더보기
[11gSQL] 5장 GROUP BY 몸풀기! COUNT() 함수. GROUP BY를 이용하여 직업 별로 급여 평균을 표시하기. COL FORMAT은 Alias에도 지정할 수 있다. 직원들의 입사일자를 분기로 표시하기. 간단한 예제를 통해서 공부하기. 문제1> 부서별 사원수를 count 하시오. 문제2> 분기별 입사 인원수를 count 하시오. GROUP BY 함수는 Alias를 사용할 수 없음. 문제3> 입사 년도별 인원수를 count 하시오. (Row단위 grouping -> Col단위 grouping) 위와 같이 하면 쉽게 Row단위로 grouping 할 수 있다. 이번에는 Col 단위로 grouping 해보자. 한 번에 원하는 결과에 도달하기는 어려우므로 차근 차근 답을 찾아가는 과정이 필요하다.우선은 1982년에 입사한 사람은 1로.. 더보기
[11gSQL] 조건문 간단한 문제 JOB이 'CLERK'이면 (sal + comm) * 0.00145를 'SALESMAN'이면 (sal + comm) * 0.00147을 'MANAGER'이면 (sal + comm) * 0.00149를 나머지는 모두 (sal + comm) * 0.00150을세금으로 징수하는 쿼리문을 작성하라. 1) Simple CASE로 작성한 쿼리문. 2) Searched CASE로 작성한 쿼리문. 3) DECODE함수 로 작성한 쿼리문 더보기
[11gSQL] 4장 날짜,화폐단위 변경 및 조건문 # 4-17 데이터베이스에서 임의로 금액을 출력해 보았다. 화폐의 단위가 '달러'로 나오고 있다. '원'으로 바꿔보자. 현재 환경 변수는 이렇게 설정되어 있고 이렇게 변경해주면 (서버와는 관계없고 클라이언트의 설정을 바꾼 것임) '원' 단위로 변경되었다. set NLS_LANG=AMERICAN_KOREA.KO16MSWIN949 AMERICAN : Display 되는 message의 언어KOREA : 날짜형식, 숫자형식, 화폐단위KO16MSWIN949 : Client측의 Character Set 이번엔 스페인어로도 바꿔보았다. # 4-38 조건문을 배워보자. 조건문에는 크게 3가지가 있는데, Simple CASESeached CASE그리고, DECODE 함수를 사용하는 방법이 있다. 부서번호가 10번이면 .. 더보기
[11gSQL] 4장 날짜 포맷(Date Format) # 각 날짜 데이터를 포맷별로 출력해보기 월과 일에 0 없이 출력하기 월에만 0없이 출력하기 날짜에 대한 분기로 출력하기 # 4-11모든 사원을 입사한 요일(월요일부터)로 정렬해 보자 우선 요일을 출력하도록 쿼리문을 작성한다. 그 다음 요일로 정렬을 해 보니.. ABC 순서로 정렬되고 있다... 요일을 숫자로 나타내도록 쿼리문을 작성해보았다. 일요일이 1이고 월 화 수로 1씩 증가한다. 정렬을 해 보았다. 이게 아닌데.. 월요일부터 정렬되어야 한다. 요일을 나타내는 숫자에서 1씩을 빼 보았다. 자동으로 월요일이 1이 되고 1씩 증가하는 형태로 바뀌었다. 정렬에도 깔끔하게 성공하였다. 이제 요일을 숫자로 출력하는 속성을 제외하고 조회하면 원하던 결과를 얻었다. #4-14 날짜 포맷 모델의 요소 이렇게도 출.. 더보기