'미분류'에 해당되는 글 104건

  1. 2014.03.06 SQL 언어의 종류
  2. 2014.03.06 데이터베이스 설계단계
  3. 2014.03.06 SQL 표준 개정이력
  4. 2014.03.06 오라클 데이터베이스의 역사
  5. 2014.03.06 관계형 데이터베이스의 특징

SQL 언어의 종류

2014. 3. 6. 14:53 from DB

 

 구분

형식 

비고 

 DQL

 SELECT column

 FROM table명

 WHERE 조건절

 검색시 사용

 DML

 UPDATE table명

 INSERT INTO table명

 DELETE table명

 변경시 사용

 DDL

 CREATE table명

 DROP table명

 ALTER table명

 Object의 생성과 변경시

 TCL

 COMMIT;

 ROLLBACK;

 SAVEPONIT;

 Transaction 종료 및 취소

 DCL

 GRANT ...;

 REVOKE ...;

 권한 부여 및 취소

 

'DB' 카테고리의 다른 글

테이블 insert 권한 줄때 잊지말고 시퀀스도 select 권한도 함께!  (0) 2014.04.03
PL/SQL  (0) 2014.03.06
데이터베이스 설계단계  (0) 2014.03.06
SQL 표준 개정이력  (0) 2014.03.06
오라클 데이터베이스의 역사  (0) 2014.03.06
Posted by 에시드 :

데이터베이스 설계단계

2014. 3. 6. 14:32 from DB

클라이언트의 요구에 의해 정보시스템이 구축되기까지의 단계를 알아보자

 

시스템 구축단계에 대한 이해를 통해 데이터베이스가 어떻게 분석되고 설계되는지를 이해해 보고 또한 분석/설계된 내용을 데이터베이스에 어떻게 구현하는지 자세히 알아보자.

일반적으로, 새로운 데이터베이스를 구축하기 위해서 크게 3가지 단계를 통해 분석,설계를 하게 된다.

 

 

첫번째 단계. 개념적 데이터모델링

- 클라이언트의 요구사항을 듣고 분석하는 단계

 

실세계(Real World)의 내용을 그대로 이해하고 분석하며(정규화 과정), 분석결과를 ERD(Entity Relationship Diagram)

로 표현하는 과정

실세계에서 관리해야 할 대상(업무,사람,목표,장소,개념) 엔티티(Entity)와 엔티티의 속성(Attribute) 정의

 

* 예를 들면, 사람이라는 엔티티는 이름,주민번호,주소,연락처와 같은 속성들로 구분된다. 그리고, 여러개의 속성들 중에 대표적인 속성을 식별자(identifier)라고 한다. 여러명의 사원이 존재할 때 각각의 사원들을 구분하기 위해서는 각 사원들에게 사원번호라는 유일한 번호를 부여하거나 또는 주민번호와 같은 유일한 값으로 구분한다. 이렇게, 중복되지 않는 유일한 값만이 식별자(ID)가 될 수 있다. 또한 여러명의 사원정보를 하나의 튜플(Tuple)이라고 표현한다.

회사에 근무하는 한명의 사원정보가 튜플이 될 수 있으며, 많은 사원정보들도 튜플이 될 수 있다.

마지막으로, 어떤 엔티티가 가진 속성과 다른 엔티티가 가진 속성들 간에 데이터의 관계를 릴레이션쉽(RelationShip)이라고 한다.

 

 

두번째 단계. 논리적 데이터베이스 설계단계

- 개념적 데이터모델링 단계에서 분석된 ERD가 실제적인 데이터베이스 환경에 구현될 수 있는 형태로 만들어지는 단계

개념적 모델링단계에서 분석되었던 엔티티는 논리적 데이터베이스설계단계에서는 테이블이라는 구조로 표현되고, 애트리뷰트는 컬럼(Column)으로, 식별자는  Primary_key로 튜플은 행(Row)으로, 관계는 Foreign_key라는 구조로 설계된다.

 

 

세번째 단계. 물리적 데이터베이스 설계단계

- 논리적 데이터베이스 설계단계의 결과를 데이터베이스에 직접생성하고 효과적인 데이터베이스의 운영과 성능향상을 위해 하드웨어적인 사용계획을 세우는 마지막 단계.

 

 

 

 

 

 

'DB' 카테고리의 다른 글

PL/SQL  (0) 2014.03.06
SQL 언어의 종류  (0) 2014.03.06
SQL 표준 개정이력  (0) 2014.03.06
오라클 데이터베이스의 역사  (0) 2014.03.06
관계형 데이터베이스의 특징  (0) 2014.03.06
Posted by 에시드 :

SQL 표준 개정이력

2014. 3. 6. 14:09 from DB

년도 명칭 별칭 설명
1986 SQL-86 SQL-87 ANSI에 의한 최초의 표준화.
1989 SQL-89 FIPS 127-1 마이너 개정, integrity constraints가 추가. FIPS 127-1에서 채택.
1992 SQL-92 SQL2, FIPS 127-2 매이저 개정 (ISO 9075), Entry Level SQL-92은 FIPS 127-2로 채택.
1999 SQL:1999 SQL3 정규 표현식 매칭 추가, 재귀 쿼리 (예, 이행적 폐쇄), 데이터베이스 트리거, 절차적, 통제흐름 구문 지원, 비규격 타입 그리고 객체지향형 특징 지원(예, 구조화 타입). 자바에서 내장 SQL 지원(SQL/OLB) 그리고 (SQL/JRT).
2003 SQL:2003 SQL 2003 XML 관련 특징 도입 (SQL/XML), window functions, 자동생성값에 대한 표준화된 시퀀스와 컬럼(아이덴티티 컬럼 포함).
2006 SQL:2006 SQL 2006 ISO/IEC 9075-14:2006은 XML과 결합되어 SQL이 사용되는 방법을 정의하고 있다. 여기에는 SQL 데이터베이스 내의 XML 데이터의 불러오기와 저장하는 방법을 정의하고 있으며, 데이터베이스 내에서 조작하여 XML 형식의 전통적 SQL 자료와 XML 형식 모두로 출력하는 방법을 제시한다. 게다가, 여기에서는 W3C에 의해 제안된 XML 쿼리 언어, Xquery를 이용하여 SQL 코드로 애플리케이션을 통합할 수 있도록 하여, 보통의 SQL 데이터와 XML 문서에 접근할 수 있게 한다.[12]
2008 SQL:2008 SQL 2008

커서 정의 외부의 ORDER BY를 합법화 .

INSTEAD OF 트리거 추가. TRUNCATE 구문 추가.[13]

2011 SQL:2011 SQL 2011 임시 데이터베이스에 대한 지원 향상

 

 

 

 

우리가 알고 있는 데이터베이스 구조체에 데이터를 입력하고 저장하고 떄로는 변경하기 위해서는 반드시 SQL 언어만을 사용해야 한다.

일반적으로 SQL언어를 구조적 질의어(Structure Query Language)라고 하며 SQL언어는 특정한 데이터베이스시스템에 한정되어 사용되지 않고 상용화된 대부분의 데이터베이스에서 널리 사용되고 있다. 그이유는 SQL언어는 사용초기에 IBM사의 관계형 DBMS에서만 사용되었으나 지금은 ANSI에 의해 표준화 되어 다른 데이터베이스에서도 널리 사용되고 있기 때문이다.

 

SQL언어는 데이터와 데이터간의 관계(Relational)를 기초로 한 대표적인 언어로서 1973년 SQUARE(structure queries as relational expressions)라는 이름으로 처음 발표되었는데 수학적인 표현이 많아 초보자가 사용하기에 매우 어려웠다. 이후, 이것을 기초로 1974년 SEQUEL(structure english as query language)라는 이름으로 IBM사의 세너제이(San Jose)연구소에서 만들어졌으며 다시 이것을 개선하여 1976년 SEQUEL-2가 발표되었다. 그리고 SEQUEL-2를 기초로 한 시스템인 시스템 R과 오라클 데이터베이스 등이 발표되면서 SQL이라는 이름으로 널리 알려지게 되었다.

 

 

 

'DB' 카테고리의 다른 글

SQL 언어의 종류  (0) 2014.03.06
데이터베이스 설계단계  (0) 2014.03.06
오라클 데이터베이스의 역사  (0) 2014.03.06
관계형 데이터베이스의 특징  (0) 2014.03.06
데이터베이스의 역사  (0) 2014.03.06
Posted by 에시드 :

 

 관계형 RDBMS

 객체관계형 RDBMS

Oracle V6.x

 Oracle V7.x

 Oracle V8/8i

Oracle V9i

SQL1(1988)

SQL2(1992)

SQL3(1999)

 

 

오라클 데이터베이스의 역사

 

1987년 : 오라클 관계형 데이터베이스 버전 6, ANSI에 의해 최초로 표준화된 SQL-1988 채택

1990년 : 오라클 관계형 데이터베이스 버전 7

1997년 : 오라클 관계형 데이터베이스 버젼 8, ANSI에 의해 표준화된 SQL-1992 채택

1999년 : 오라클 관계형 데이터베이스 버젼 8i, ANSI에 의해 표준화된 SQL-1999 채택

2001년 : 오라클 관계형 데이터베이스 버젼 9i, ANSI에 의해 표준화된 SQL-1999 의 대부분 기능을 채택

 

 

'DB' 카테고리의 다른 글

데이터베이스 설계단계  (0) 2014.03.06
SQL 표준 개정이력  (0) 2014.03.06
관계형 데이터베이스의 특징  (0) 2014.03.06
데이터베이스의 역사  (0) 2014.03.06
DBMS (DataBase Management System)  (0) 2014.03.06
Posted by 에시드 :

관계형 데이터베이스 RDBMS

 

1. 1970년 Dr. E.F Codd에 의해 관계형 모델이 처음 제안되었다.

2. 파일구조 시스템과의 차이점

    - 데이터의 무결성을 지켜준다.

    - 데이터의 공유

    - 데이터의 정확성과 일관성

    - 중복성의 제거

    - 불일치를 피할 수 있다.

    - 표준화가 가능하다.

 

 

1970년에 E.F. Codd 박사의 논문에서 처음으로 소개된 이후로 IBM 등 여러회사에서 상용화된 제품을 내놓기도 하였으며 그중에 가장 대표적인 관계형 데이터베이스가 오라클사 제품이다. 그러나 프로그램의 규모가 커지고 대용량 데이터를 관리하며 멀티미디어데이터를 저장하고 인터넷 환경을 보다 쉽게 구축하는데 있어 관계형 데이터베이스는 많은 한계를 드러냄으로써 새로운 기법을 요구하게 되었다. 이러한 요구에 의해 객체관계형 데이터베이스와 객체지향 데이터베이스가 새로운 기술로 부각되었고 이에 오라클사는 기존에 관계형 데이터베이스의 장점과 새로운 객체기술을 도입하여 오라클 데이터베이스 8i, 9i 버전을 소개하게 되었다.

 

 

 

파일시스템 VS 데이터베이스 시스템

 

 

데이터베이스의 장점은 파일시스템의 단점과도 같다.

 

일반적으로, 파일시스템을 사용하는 경우보다 데이터베이스 관리시스템을 사용하는 경우가 데이터의 저장 및 관리가 용이한 첫 번째이유는 데이터의 중복성이다.

만약, 한회사의 사원정보를 파일형태로 만들었다면, 하나의 파일은 필요로 하는 많은 사용자가 동시에 검색해 볼 수 있지만 동시에 저장할 수 없기 때문에 정보의 변경을 용이하게 할 수 없는 단점을 가지고 있다. 이러한 문제를 해결하기 위해서는 원본 파일에 대한 복사 본 파일을 여러개 복사하여 필요할 때 마다 참조하는 것이다. 결국 같은 사원정보 데이터가 여러군데 중복적으로 존재하는 문제가 발생하게 된다. 이러한 문제에 대해 데이터베이스 관리 시스템은 논리적인 테이블구조를 통해 많은 사용자들이 동시에 데이터를 공유할 수 있도록 기능을 제공하며 결론적으로 데이터의 중복을 피할수 있습니다.

 

또한, 파일 시스템은 하나의 원본 파일에 대한 변경작업이 발생하게 되면 복사해 주었던 여러개의 복사본 파일에 대한 변경작업을 모두 하지 않으면 서로 다른 사원정보 파일이 존재하기 때문에 데이터가 불 일치하는 문제가 발생합니다.

 

데이터베이스 관리시스템은 많은 사용자들이 데이터를 공유할 수있기 때문에 데이터의 성격, 속성 또는 표현방법 등을 체계화할 수 있고 또한 표준화할 수 있는 장점을 가지고 있다.

 

일반적으로, 파일 시스템은 운영체제에 로그인할 수 있는 사용자는 누구나 데이터를 참조 할 수 있지만(물론 OS마다 다르겠죠,  일반적인 windows환경을 이야기 하는 것 같습니다.) 데이터베이스 관리시스템은 데이터베이스에 인증된 사용자만이 참조할 수 있도록 보안기능을 제공한다.

 

그리고, 테이블을 생성할 때 제약조건(Primary Key, Foreign Key, NOT NULL, CHECK, UNIQUE) 기능을 이용하여 사용자가 실수로 조건에 만족되지 않는 데이터를 입력하는 것을 방지하여 데이터의 무결성(Integrity)을 보장 할 수도 있다. 또한 시스템의 갑작스런 다운(DOWN)으로부터 사용자가 입력,수정,삭제하던 데이터가 제대로 변경될 수 있도록 보장해 주는 기능도 제공한다.

 

하나의 데이터구조를 많은 사용자가 동시에 입력, 수정, 삭제, 조회할 수 있도록 공유기능을 제공한다.

 

 

 

 

'DB' 카테고리의 다른 글

SQL 표준 개정이력  (0) 2014.03.06
오라클 데이터베이스의 역사  (0) 2014.03.06
데이터베이스의 역사  (0) 2014.03.06
DBMS (DataBase Management System)  (0) 2014.03.06
sysdate  (0) 2013.07.19
Posted by 에시드 :