본문 바로가기

데이터베이스

관계형 데이터베이스란 개념 알아보기

728x90
반응형

관계형 데이터베이스 모델은 1970년 6월 E.F.Codd 박사의 논문으로 부터 처음 소개가 되었습니다. 

"대량 공용 데이터베이스의 관계형 모델" 이라는 논문에서 처음으로 관계형 모델 도입을 제안합니다. 



관계형 데이터베이스는 RDBMS(Relational Database Management System)라고 부르며 대중화 되며 대표적인 업체가 Oracle 사입니다. 


관계형 모델의 구성요소

-데이터를 저장하는 객체 또는 관계의 집합 

-다른 관계를 생성하기 위한 일련의 연산자 집합

-데이터의 무결성 (정확성, 일관성) 



관계형 데이터베이스의 기능은 데이터의 저장을 관리하고 ACCESS을 통제하면 검색 및 수정하기 위한 수단을 제공합니다. 

또한 관계형 데이터베이스 시스템은 2차원 테이블 형태로 구성됩니다. 각 테이블은 Row 와 Colums 으로 되어 있고 SQL 명령어를 실행함으로 데이터 조작이 가능합니다. 


RDBMS는 외래 키를 사용하여 하나의 테이블에 다른 데이터를 관련시킬 수 있도록 해 줍니다. 


기본키 : 기본키는 중복을 허용하지 않으면 변경 할 수가 없습니다. 

외래키 : 외래키는 데이터 값을 기초로 노리적이지 물리적이거나 포인터가 아닙니다. 외래키는 기본키값 또는 고유 값과 일치해야 하면, Null값이 아닙니다. 


OBJECT

 설    명

 TABLE

 ROW와 COLUMN으로 구성된 기본적인 저장 단위

 VIEW

 하나 이상의 TABLE로부터 논리적으로 데이터를 분류한 부분집합

 INDEX

 포인터를 사용하여 행의 검색 속도를 향상

 SEQUENCE

 자동적으로 ORACLE SERVER이 유일 번호를 생성

 SYNONYM

 객체에 대체 이름을 부여

PROGRAM

 UNIT SQL또는 PL/SQL 문으로 작성한 PROCEDURE, FUNCTION, PACKAGE


  

 SQL 문장 

- SQL로 서버와 통신이 가능하며 효율적이고 배우기가 쉽고 사용하기가 편리합니다. 테이블 정의, 검색, 조작등을 할 수 있게 해 줍니다. 


ORACLE SERVER의 특징

- 관계형 구조에 근거한 모든 장점을 가지고 있으며, 프로그램 단위를 저장하고 실행 하도록 하는 PL/SQL 엔진을 통해 정보를 관리할 수 있게 해줍니다. 

  데이터베이스가 어떻게 ACCESS 되고 사용되는지를 제어하는 보안 기능들이 최적화 되어 있으며, Locking 기버을 통해 데이터의 일관성과 보호 기능을 합니다. 

  시스템은 서버-클라이언트 형태로 운영을 할 수가 있습니다. 

  

ORACLE RDBMS 기능 

1) 데이터 정의와 저장을 관리

2) 데이터 이용과 동시성 제어 및 제한

3) 백업과 복구 제공

4) SQL과 PL/SQL문 번역

5) 시스템 보안 유지


ORACLE SQL은 ANSI(American Standards Institute)와 ISO(Intermation Standards Organization) 표준을 따릅니다


구 분

 문  장

 설         명

 Retrive(Query)

 SELECT

 데이터베이스로부터 데이터 검색

 DML(Data Manipulation Language)

 INSERT

UPDATE

DELETE

 개별적으로 데이터베이스 테이블에서 새로운 행을 입력하고 기존의 행을 변경하고, 원치 않는 행을 제거 합니다.

 DCL(Data Control Language)

 CREATE

ALTER

DROP

RENAME

TRUNCATE

 데이터 구조를 생성, 변경, 제거합니다.

 Transaction Control Language

 COMMIT

 ROLLBACK SAVEPOINT DML명령문으로 만든 변경을 관리, 데이터 변경은 논리적 Transaction으로 함께 그룹화 될 수 있습니다.

 DCL(Data Control Language)

 GRANT

REVOKE

 ORACLE 데이터베이스와 그 구조에서 액세스 권한을 제공하거나 제거합니다.

SQL 문장 특징 

-배우기 쉽고 사용하기가 쉽다

-비절차적인 언어

-시스템 개발 및 유지 보수 시간을 주일 수 있다. 

-영어와 유사한 언어이다


3 PL/SQL(Procedural Language/SQL)

PL/SQL은 ORACLE 회사의 SQL에 대한 절차적 확장입니다. 객체 관계형 데이터베이스에 대한 표준 데이터 Access 언어입니다. PL/SQL은 데이터 캡슐화, 정보 숨김, 객체 지향 같은 현대적 소프트웨어 엔지니어링 기능을 제공하여 ORACLE SERVER과 툴 셋에 대한 최신식의 프로그래밍을 가능하게 합니다.



PL/SQL 문장의 종류

기본 PL/SQL은 선언부, 실행부, 예외 처리부의 블록과 섹션으로 구성되어있다. 이들 중 실행부에서 사용할 수 있는 명령어들은 다음과 같다.

구   분

 설  명

 IF

 조건에 따라 선택적으로 작업을 수행

 Basic LOOP

 LOOP와 END LOOP사이의 문장을 반복 수행

 FOR loop

 반복되는 수를 정하여 문장을 반복 수행

 WHILE loop

 제어 조건이 TRUE가 아닐 때까지 문장을 반복 수행


PL/SQL의 특징

-SQL로 얻을 수 없는 절차적 프로그래밍 가능 

-모듈화 프로그램 개발 가능하게

-변수, 상수 등을 선언해서 사용가능 

-조건, 루프 사용 가능하게

-예외 처리 가능 



반응형

'데이터베이스' 카테고리의 다른 글

DBeaver 에서 Dark 테마로 눈피로 줄이자~  (0) 2020.01.16