/ php / index / english dictionary

 회원가입 |  로그인

{데이터 베이스 1}
( home ) 2003-04-23 23:21:18
 링크 1 : http://dhtmldot.com/technote/main.cgi?board=lec_db01&number=15&ryal=&back=

database 시스템이란?

데이터베이스 시스템이란 전산화된 파일의 저장 장치라고 보시면 됩니다
즉, 정보를 유지하고, 이 정보를 이용 가능하게 하는 시스템을 말합니다
그리고 다음과 같은 파일 연산을 제공합니다

- (새로운 파일)을 데이터베이스가 (추가)할 수 있는 연산
- 새로운 데이터를 (기존의 파일)에 (삽입)할 수 있는 연산
- (기존의 파일)에서 데이터를 (검색)할 수 있는 연산
- 기존의 파일에 있는 데이터를 (갱신)할 수 있는 연산
- 기존의 파일로부터 데이터를 (삭제)할수 있는 연산
-  데이터베이스에서 기존의 파일을 제거할 수 있는 연산


그런데 데이터베이스에서 사용하는 단어들에 대해 주의해야 할 사항이 있습니다
저장파일은 파일로써 보다는 "테이블"로 취급합니다 테이블의 각 행은 파일의 레코드를 표한합니다. select, insert, update, delete 연산은 sql(structured Query Language) 데이터베이스의 문장입니다. 그리고 sql은 하나의 프로그래밍 언어라고 보시면 되겠네요
그럼 <데이터베이스의 장점>은 무엇일까요?

- 중복성(Redundancy)이 감소된다
- 불일치(Inconsistency)를 피할 수 있다
- 데이터의 공유성(Shared)
- 표준화(Standard)가 가능하다
- 보안(Security)을 유지할 수 있다
- 무결성(Integrity)을 유지할 수 있다
- 요구사항들의 충돌이 해결될 수 있다
- 데이터의 독립성(Data Independence)

여기에서 가장 중요한 것이 데이터의 독립성! 이라고 할 수 있습니다. 데어터 독립성의 목적은 "저장구조(Storage Structure)와 액세스 전략(Access Strategy)으로부터 응용을 분리시키는 것"으로 정의할 수 있습니다. 여기서 응용이란! 특정 저장구조나 액세스 전략에 의존하지 않는 것을의미합니다. 쉽게 얘기하자면 어떤 속성에 대해 수행한 변경이 동일한 관계를 위한 다른 속성들에게 어떠한 인지가능한 영향도 주지 않는 것을 의미합니다

그럼 관계형 시스템과 다른 시스템의 차이는 무엇일까요? 요새 개발되고 있는 모든 데이터베이스 시스템을 관계형 시스템이라고 보시면 됩니다. 관계형 시스템에서는 데이터를 테이블로써 받아들이고, 사용자가 제시한 연산자는 새로운 테이블을 만들어내는 연산자라고 보시면 됩니다 그럼 관계형 데이터베이스 시스템은 다음과 같은 특성이 있습니다


- 모든 엔티티는 그 엔티티의 인스턴스를 독특하게 정의하는 일련의 속성들을 갖고 있는데, 이 속성 집합을 기본키 라고 부릅니다
- 기본 키는 어떠한 부분도 널(null)이 될수없다 ?
- 모든 엔티티는 엔티티 내의 각 행을 독특하게 식별하는 일련의 속성들을 갖고 있습니다
그리고 어떠한 복제 행도 테이블 내에 존재할 수 없죠. 어떻게 보면 이것은 모든 테이블이 기본 키를 갖고 있어야 한다는 말입니다. 이러한 개념을 데이터 무결성 이라고 부르죠
- 각각의 테이블들은 외부 키를 통해서 서로 관계를 맺습니다. 외부 키는 가능한 값의 집합이 두번째 테이블의 기본 키에서 발견되는 목적인 한개의 테이블 열입니다. 그래야 테이블들을 join해서 사용하기가 쉽죠.
참조무결성은 어떤 외부 키 열 내에 있는 값들이 그것이 참조하는 기본 키나 널 값으로 제한할 때 성취됩니다
- 행의 순서는 자발적입니다 관계형 데이터베이스에서는 테이블에 함축된 순서가 없습니다. 여러분이 순서를 지정하지 않으면 테이블에서 행이 검색될 순서를 알수가 없죠 프로그래밍을 하다보면 order by의 문구로 순서를 정해줄 수 있습니다
- 열의 순서도 자발적입니다. 행의 경우처럼 함축된 순서가 없습니다

데이터베이스 시스템의 구조는 내부,외부,개념의 세단계로 나누어집니다. 내부단계(Internal Level)는 물리적인 기억장소와 가장 가까운 단계로 데이터가 실제로 저장되는 방법과 관련이 있습니다. 외부단계(External Level)은 사용자와 가장 가까운 단계죠. 사용자 개개인이 보는 자료에 대한 관점과 관련이 있습니다. 그리고 개념단계(Conceptual Level)는 내부단계와 외부단계 사이에 위치하는 간접(INdirection)단계죠

데이터베이스를 접하다 보면 DBA라는 말을 많이 듣게 됩니다. 그럼 데이터베이스 관리자(Database Administrator : DBA)에 대해서 알아보죠. 데이터베이스관리자는 전체 시스템을 모두 제어하는 개인이나 그룹입니다. DBA의 책임은 다음과 같은 것들이 있죠

- 데이터 베이스의 정보 내용 결정. 즉 어떤 정보가 데이터베이스에 포함 도이ㅓ야 하는지 정확하게 결정하는 것이 DBA의 일입니다.
- 기억장치 구조와 액세스 전략결정. DBA는 데이터베이스 안에서 데이터가 어떻게 표현되는지 결정해야 하고 기억장소 구조 정의를 작성함으로써 그 표현을 정리해야 합니다
- 사용자와의 연락. 사용자가 요구한 데이터가 유용함을 보장하고, 필요한 외부 스키마를 응용 가능한 외부 DDL을 사용하여 기록할 수 있도록 해준다
- 보안 검사와 무결성 검사 정의
- 예비조치와 회복에 대한 전략 정의. 사용자의 오류나 하드웨어 또는 운영체계 시스템의 실수로 데이터베이스의 임의의 부분에서 오류가 발생했을때 최소한의 지연시간과 가능한 한 남은 시스템에 영향이 없도록해서 데이터를 복구해야 합니다. DBA는 적절한 회복전략을 정의하고 구현해야 합니다
- 변화하는 요구에 대한 적응과 성능향상에 대한 감시. DBA는 기업을 위한 최상의 실행 결과를 얻도록 시스템을 구성해야 합니다. 그리고 변화하는 요구에 적절한 조절을 해 주어야 합니다.


데이터베이스 관리 시스템(Database Management System : DBMS)은 데이터베이스의 모든 액세스를 처리하는 소프트웨어입니다. 개념적으로 다음과 같은 작업이 발생합니다.

- 사용자가 특수한 데이터 종속언어(SQL같은)를 사용하여 액세스를 요구한다
- DBMS 가 이 요구를 받아서 분석한다
- DBMS가 이 사용자의 외부 스키마와 외부적/개념적 사상, 개념 스키마, 개념적/내부적 사상, 기억정소 구조 정의를 차례대로 검토한다
- DBMS가 저장된 데이터베이스에서 필요한 연산을 수행한다

끝내기 전에 간단히 SQL이 무언인가 살펴보도록 하죠. SQL은 보통 "시이퀄"이라고 발음합니다. SQL은 구조화 질의 언어라고 부르는데 SQL을 이용해서 여러분은 데이터베이스와 통신을 할 수 있습니다. SQL은 비프로시저 언어 입니다. 데이터에 접근하여 조작하는 방법을 정확히 기술해야 하는 C언어나 COBOL 언어와는 달리 SQL은 해야 할 것을 지정합니다. SQL은 내부적으로 요구한 것을 수행하는 방법을 결정합니다. SQL의 산업기준은 ANSI입니다.
ORACLE의 SQL은 무결성 향상 기능(Integrity Enhancement Feature)을 완전히 실행하는 ANSI X3.135-1989/ISO 9075-1989 기준의 레벨 2를 준수한다고 하네요. 뭔지모르지민


ㅡㅡ; 이라니 쿨럭;







  목록

 . 
 php 게시판 소스 2 
 php 게시판 소스 1 
 php 게시판 
 게시판 짜기위한 게시판 ^-^; 
 문자열 연결 연산자 . 마침표    : 스터디
 러닝 php 책소스    : 스터디
 php 폼 자동완성  비밀글입니다  : 폼테그
 디데이 d-day 만들기    : asp
 파일 include 하기    : 팁
 php 간단한 카운터    : 팁
 입력폼에서 엔터키 치면 스크립트 실행하기.    : 팁
 response체, request객체, server객체    : asp
 링크    : asp
 반복되는 링크 묶기    : asp
 ....  비밀글입니다  : 공지
 텟넷 명령어    : 팁
 텔넷 접속    : 팁
 간단한 방명록 소스    : 스터디
 사이트 [1]   : 팁
 mysql 기본설정    : MySql
 ssh    : 팁
 zterm    : 팁
 자바 키워드    : 팁
 자바개발 프로그램설치    : 팁
 [강의] 게시판 목록을 보여주는 부분입니다..    : 스터디
 while 문으로 이미지쉽게보이기 [2]   : 팁
 php 7-2    : 스터디
 php 7-1    : 스터디
 php 6    : 스터디
 php 5    : 스터디
 php4    : 스터디
 php3    : 스터디
 php2    : 스터디
 php1 [3]   : 스터디
 CREATE TABLE    : MySql
 SQL 1    : 스터디
 문단 양쪽정렬    : 스터디
 초간단 php 랜덤 이미지 및 랜덤 배경이미지 소스    : 팁
  [정보] 초보분들을 위한 PC부품 구매를 위한 도우미    : 팁
 쿠키를 이용한 사용자 인증    : 팁
 테이블 색 다르게 지정 하기 다른방법    : 팁
 자동링크 function    : 팁
 [리눅스] 리눅스 기본명령어 50    : 스터디
 my sql    : MySql
 Database의 구조    : 스터디
 데이터 베이스 1    : 스터디

    목록            1

Copyright 1999-2018 Zeroboard / skin by Yoojunge