재밌고 어려운 IT를 이해해보자~!

SQL자격검정 실전문제 본문

개인공부

SQL자격검정 실전문제

언제나즐거운IT 2024. 2. 26. 18:46

오답노트 및 내용정리

 

데이터모델링의 특징

- 시스템 구현만을 위한 진행 X

 

데이터 모델링 유의해야할 사항 

사용자가 처리하는 프로세스나 장표 등에 따라 매핑이 될 수 있도록 프로그램과 테이블 간의 연계성을 높인다. X

 

ERD 에 대한 설명

가장 중요한 엔터티 왼쪽 상단 O

 

엔터티의 특징

엔터티는 업무에서 필요로 해야 의미가 있다. -> 엔터티는 업무 프로세스에 의해 이용되어야 한다.

 

발생시점으로 구분

기중행

 

1차 정규화 : 같은 성격, 내용 컬럼이 연속될 때,

2차 정규화 : PK 복합키 구성일 때 부분적 함수 종속 관계 테이블 분리

3차 정규화 : PK가 아닌 일반 컬럼에 의존하는 컬럼 분리

 

데이터 조회시 성능을 빠르게 하기 위해 원래 속성의 값을 계산하여 저장할 있도록 하는 속성

파생속성

 

관계는 존재에 의한 관계, 행위에 의한 관계로 나뉜다. ERD에서는 존재,행위를 구분하지 않고 단일화된 표기법 사용

UML에는 클래스다이어그램에 관계중 연관, 의존관계가 있고 실선과 점선으로 표기법이 다르다.

연관관계는 항상 이용하는 관계로 존재적 관계, 의존관계는 상대방 클래스의 행위에 의한 관계

연관관계는 소스코드에서 멤버변수로 선언하여 사용, 의존관계는 오퍼레이션에서 파라미터등으로 이용

 

관계 표기법은 관계명, 관계차수, 선택성의 3가지 개념으로 표현  => 식별성 X

부서 사원 엔터티 간의 소속 관계는 존재적 관계

주문과 배송 엔터티간의 배송근거 관계는 행위에 의한 관계

 

물리적 독립성은 물리 스키마가 변경되어도 논리 스키마에 영향을 주지 않는다. 

 

업무기술서, 장표에 관계연결을 가능하게 하는 동사가 있는가 ? O 명사 XXX

 

두개의 엔터티 사이에서 관계 도출시 확인해야 할 사항

두개의 엔터티 사이에 관심 있는 연관규칙 존재

두개의 엔터티 사이에 정보의 조합 발생

업무기술서, 장표에 관계연결에 대한 규칙이 서술

업무기술서ㅡ 장표에 관계연결을 가능하게 하는 동사 존재

 

주식별자 지정시 고려해야 할 사항

주식별자에 의해 엔터티 내의 모든 인스턴스들 유일 구분

주식별자를 구성하는 속성의 수 유일성 만족하는 최소 수

주식별자 값 자주 변하지 않기

주식별자로 지정되면 반드시 값 존재

 

대표성을 가지는가?

주식별, 보조식별

 

엔터티 내에서 스스로 생성되었는지 여부에 따라

내부, 외부 식별자

 

단일 속성으로 식별이 되는가?

단일, 복합 식별자

 

업무적으로 의미가 있던 식별자속성을 대체하여 일련번호와 같이 새롭게 만든 식별자 구분

본질식별자, 인조식별자             

 

불변성 : 주식별자가 한번 특정 엔터티에 지정되면 그 식별자 값은 변하지 않아야 한다.

 

SQL문의 조인관계 최소화를 위해서는 식별자 관계로 연결해야한다.

 

식별자 관계 비식별자 관계
강한 연결관계 약한 연결관계
자식 주식별자의 구성에 포함 자식 일반 속성에 포함
실선 점선
- 반드시 부모 엔터티에 종속
- 자식 주식별자 구성에 부모 주식별자 포함 필요
- 상속받은 주식별자 속성을 타엔터티에 이전 필요
- 약한 종속관계
- 자식 주식별자 구성을 독립적으로 구성
- 자식 주식별자구성에 부모 주식별자 부분 필요
- 상속받은 주식별자 속성을 타 엔터티에 차단필요
- 부모쪽의 관계참여가 선택관계

                                                                                                                       

 

 

대표성여부

- 주,보조 식별자

스스로생성여부

- 내부(스스로만들어짐),외부(타 엔터티와 관계를 통해) 식별자

속성의수

- 단일,복합 식별자

대체여부

- 본질(업무에의해), 인조(인위적) 식별자

 

34번문제 릴레이션 다시풀기...

ab->cde 이면 ab는 모든 속성을 결정하는 것

 

1정규형은 모든 인스턴스가 반드시 하나의 값을 가져야 하는 것.

 

기본키에 속하지 않은 속성 모두가 기본키에 이행적 함수종속이 아닐 때 제 3 정규형 

 

정규화는 개념적 X    논리 O  데이터 모델의 일관성을 확보하고 .........

 

부모의 식별자를 자식의 식별자에 포함하면 식별관계

 

엔터티의 일반속성은 주식별자 전체에 종속적이어야한다. (2차 정규형)

 

엔터티의 일반

순차적으로 A,B가 반드시 모두 수행되거나, 않아야 하낟고 하시 

A,B 수행후 각가 커밋 진행.

 

NULL 값엔 어떤 숫자를 더해도 항상 0

 

인조식별자 사용시 데이터 중복 막기 어려움

비교하여 추가적인 인덱스 필요

 

1차정규화 모든 속성은 1개의 값을 가진다..

 

NULL = NULL 은 false 또는 unknown

집계함수 계산시 NULL 값은 0 이 아니라 계산에서 제외

 

인조식별자는 본질식별자가 복잡할때 사용

인조식별자 사용시 중복 데이터 ㅁ작기 어려움

인조식별자 사용시 추가 인덱스 필요

 

============================================================

과목 2

DISTINCT는 중복된 데이터 있을시 1건으로 처리

 

WHERE 절에는 집계함수 사용 불가능


WHERE AVG(SAL)  ◀ 에러난다.

 

SUM연산대상에서 NULL 은 제외된다.

하지만 SUM(NULL) 은 NULL이다..

ex

[COL2]

<NULL>

50

10

일때 SUM(COL2) 는 60이지만

SUM(COL2의 1행이라면) NULL이다 ...

 

'001' 괴 '1'은 다르다.

' ' 입력시 오라클에선 NULL 로 입력

오라클에서 IS NULL 로 조회해야한다

' '입력시 SQL server 에선 ' ' 으로 입력 

' ' 으로 조회해야한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'개인공부' 카테고리의 다른 글

JSP파일에 없는 코드가 관리자 개발도구에만 보이는 이유  (0) 2024.03.31
SQLD 합격!  (2) 2024.03.30
SQLD 정리  (1) 2024.02.25
Spring Framework  (0) 2024.02.23
프로젝트 관련 궁금증 정리  (0) 2024.02.22
Comments