★★ DML - SELECT의 개요 SELECT 문 : 테이블을 구성하는 튜플(행)들 중에서 전체 또는 조건을 만족하는 튜플(행)을 검색하여 주기억장치 상에 임시 테이블로 구성하는 명령문 일반 형식 123456SELECT Predicate [ 테이블명 ].속성명1, [ 테이블명. ]속성명2, …FROM 테이블명1, 테이블명2, …[ WHERE 조건 ][ GROUP BY 속성명1, 속성명2, … ][ HAVING 조건 ][ ORDER BY 속성명 [ ASC | DESC ] ];cs SELECT절 - 속성명 : 검색하여 불러올 속성(열) 또는 속성을 이용한 수식을 지정 - 기본 테이블을 구성하는 모든 속성을 지정할 때는 '*'를 기술한다 - 두 개 이상의 테이블을 대상으로 검색할 때는 '테이블 명·속성 명'..
DDL의 개요 DDL(Data Define Language, 데이터 정의 언어)은 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 명령문임 DDL로 정의된 내용은 Meta-data가 되며, 시스템 카탈로그에 저장함 데이터 정의문에서 사용하는 테이블 종류 기본 테이블 : 이름을 가지고 있으며 독자적으로 존재한다 뷰 테이블 : 독자적으로 존재하지 못하고, 기존 테이블로부터 유도된 이름을 가진 가상 테이블이다 임시 테이블 : 질의문 처리 결과로 만들어진 테이블로서, 이름을 가지지 않는다 CREATE SCHEMA 스키마를 정의하는 명령문 스키마의 식별을 위해 스키마 이름과 소유권자나 허가권자를 정의함 표기 형식 1CREATE SHEMA 스키마_이름 AUT..
SQL(Structured Query Language)의 개요 1974년 IBM 연구소에서 개발한 SEQUEL에서 함 많은 회사에서 관계형 데이터베이스(RDB)를 지원하는 언어로 채택하고 있음 관계대수와 관계해석을 기초로 한 혼합 데이터 언어임 질의어지만 질의 기능만 있는 것이 아니라 데이터 구조의 정의, 데이터 조작, 데이터 제어 기능을 모두 갖추고 있음 ※ 질의어(Query Language) : 질의어는 데이터베이스 파일과 범용 프로그래밍 언어를 정확히 알지 못하는 단말 사용자들이 단말기를 통햇서 대화식으로 쉽게 DB를 이용할 수 있도록 되어 있는 비절차어의 일종 SQL의 분류 SQL은 사용 용도에 따라 다음과 같이 DDL(데이터 정의어), DML(데이터 조작어), DCL(데이터 제어어)로 구분됨 ★..
★ 정규화의 개요 정규화란 함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어 가는 과정임 정규형에는 제1정규형, 제2정규형, 제3정규형, BCNF형, 제4정규형, 제5정규형이 있으며, 차수가 높아질수록 만족시켜야 할 제약 조건이 늘어남 정규화는 데이터베이스의 논리적 설계 단계에서 수행 정규화는 논리적 처리 및 품질에 큰 영향을 미침 정규화(=표준화)의 목적 데이터 구조의 안정성을 최대화함 어떠한 릴레이션 이라도 데이터베이스 내에서 표현 가능하게 만듦 효과적인 검색 알고리즘을 생성할 수 있음 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지함 데이터 삽입 시 릴레이션을 재구성할 필요성을 줄임 ★★ Anomaly(이상)의 개념..
관계대수의 개요 ★ 관계대수 : 관계형 데이터베이스에서 원하는 정보와 그 정보를 검색하기 위해서 어떻게 유도하는가를 기술하는 절차적인 언어 릴레이션을 처리하기 위해 연산자와 연산규칙을 제공하는 언어로 피연산자가 릴레이션이고, 결과도 릴레이션임 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시함 순수 관계 연산자 : Select, Project, Join, Division 일반 집합 연산자 : UNION(합집합), INTERSECTION(교집합), DIFFERENCE(차집합), CARTESIAN PRODUCT(교차곱) ★★ 순수 관계 연산자 순수 관계 연산자 : 관계 데이터베이스에 적용할 수 있도록 특별히 개발한 관계 연산자 Select - Select는 릴레이션에 존재하는 튜플 중에서 선택 ..
제약 조건의 정의 제약 조건 : 데이터베이스에 저장되는 데이터의 정확성을 보장하기 위하여 키를 이용하여 입력되는 데이터에 제한으 주는 것 개체 무결성 제약, 참고 무결성 제약 등이 해당됨 ★★ 키(Key)의 개념 및 종류 키는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 튜플을 서로 구분할 수 있는 기준이 되는 애트리뷰트를 말함 ★★ 후보키(Candidate Key) - 후보키는 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분 집합, 즉 기본키로 사용할 수 있는 속성들을 말함 - 하나의 릴레이션 내에서 중복된 튜플들이 있을 수 없으므로 모든 릴레이션에는 반드시 하나 이상의 후보키가 존재함 - 후보키는 릴레이션에 있는 모든 튜플에 대해서 유일성과..
관계형 데이터베이스의 개요 1970년 IBM에 근무하던 코드(E.F. Codd)에 의해 처음 제안됨 관계형 데이터베이스를 구성하는 개체(Entity)나 관계(Relationship)를 모두 릴레이션(Relationship)이라는 표(Table)로 표현함 릴레이션은 개체를 표현하는 개체 릴레이션, 관계를 나타내는 관계 릴레이션으로 구분 할 수 있음 장점 : 간결하고 보기 편리하며, 다른 데이터베이스로의 변환이 용이함 단점 : 성능이 다소 떨어짐 ★★ 관계형 데이터베이스의 Relation 구조 릴레이션은 데이터들을 표(Table)의 형태로 표현한 것으로 구조를 나타내는 릴레이션 스키마와 실제 값들인 릴레이션 인스턴스로 구성됨 ※ 릴레이션 인스턴스 : 데이터 개체를 구성하고 있는 속성들에 데이터 타입이 정의되..
★ 망형 데이터 모델(Network Data Model)의 개요 ★ CODASYL이 제안한 것으로, CODASYL DBTG 모델이라고도 함 ★ 그래프(망형)를 이용해서 데이터 논리 구조를 표현한 데이터 모델 ★ 상위(Owner)와 ★ 하위(Member) 레코드 사이에서 다 대 다(N : M) 대응 관계를 만족하는 구조임 레코드 타입 간의 관계는 1 : 1, 1 : N, N : M이 될 수 있음 대표적 DBMS : DBTG, EDBS, TOTAL 망형 데이터 모델의 ★ 표현 개체(Entity)군 : 동종의 Entity 그룹 - 예) 학과, 교수, 학생 Entity SET : 주종 관계에 있는 Entity군들의 그룹 - 예) 오른쪽의 그림은 하나의 Set이다 SET Membership Type : 일 대 다..