1 / 24

데이터베이스

제 07 장. 데이터베이스. 한국대학교 홍길동 교수. 데이터베이스 개요. 데이터와 정보 데이터 (Data) 는 단순한 사실에 불과한 아직 처리되지 않은 값 데이터가 사람에게 유용한 의미로 쓰여질 수 있도록 처리되면 정보 (Information). 데이터베이스. 정의 데이터베이스는 간단히 ‘관련 있는 데이터의 저장소’ 데이터베이스는 여러 사람이나 응용시스템에 의해 참조 가능하도록 서로 논리적으로 연관되어 통합 관리되는 데이터의 모임 특징

Download Presentation

데이터베이스

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 제 07 장 데이터베이스 한국대학교 홍길동 교수

  2. 데이터베이스 개요 • 데이터와 정보 • 데이터(Data)는 단순한 사실에 불과한 아직 처리되지 않은 값 • 데이터가 사람에게 유용한 의미로 쓰여질 수 있도록 처리되면 정보(Information)

  3. 데이터베이스 • 정의 • 데이터베이스는 간단히 ‘관련 있는 데이터의 저장소’ • 데이터베이스는 여러 사람이나 응용시스템에 의해 참조 가능하도록 서로 논리적으로 연관되어 통합 관리되는 데이터의 모임 • 특징 • 데이터베이스는 통합된(Integrated) 관련(Related) 있는 데이터 • 중복(Redundancy)을 최소화하여 보조기억장치에 저장

  4. 데이터베이스 관리시스템 • 데이터베이스 관리시스템 • DBMS : Database Management System • 사용자가 데이터베이스를 만들고, 유지 관리할 수 있도록 돕는 프로그램 • 데이터와 응용 프로그램 사이에서 중재자 역할로서 모든 프로그램들이 데이터베이스를 유용하게 활용할 수 있도록 관리해 주는 소프트웨어 • 데이터베이스 • ‘관련있는 데이터의 저장소’ • 데이터베이스 관리시스템 • ‘데이터베이스를 관리하는 소프트웨어’

  5. 필드와 레코드 • 필드(Fields) • 특정한 종류의 데이터를 저장하기 위한 영역 • 레코드 • 필드에는 실제 자료 값이 저장되며 이러한 필드가 여러 개 모이면 하나의 레코드(Record)가 됨.

  6. 파일과 데이터베이스 • 파일 • 여러 개의 레코드가 모여 하나의 파일을 구성 • 데이터베이스(Database) • 이러한 파일을 여러 개 모아 저장된 파일들을 논리적으로 연결해서 필요한 정보를 적절히 활용할 수 있도록 서로 관련 있는 데이터들로 통합한 파일의 집합

  7. 데이터베이스 추상화 • 데이터베이스 추상화의 세 가지 단계 • 물리적 단계(physical level) • 논리적 단계(logical level) • 뷰 단계(view level) • 스키마 • 데이터베이스의 전체적인 설계 • 즉 스키마란 데이터베이스를 구성하는 정보의 종류와 관계의 구체적인 기술(description)

  8. 데이터의 독립성 • 데이터 독립성(data independence) • 데이터베이스의 추상화 과정에서 상위 수준의 스키마 정의에 영향을 주지 않고 해당 스키마 정의를 수정할 수 있는 능력 • 논리적 데이터 독립성 • 논리적 데이터의 독립성은 사용자의 응용프로그램 자체에 영향을 주지 않고 논리적 단계에서의 논리 스키마를 수정할 수 있는 능력 • 물리적 데이터 독립성 • 물리적 데이터의 독립성은 사용자의 응용프로그램 자체나 데이터베이스의 논리 스키마에 영향을 주지 않고 데이터의 물리적 스키마를 수정할 수 있는 능력

  9. 데이터베이스 모델 • 데이터베이스 모델 • 데이터의 논리적 설계와 그들 간의 관계를 표현 • 종류 • 계층적 모델(hierarchical model) • 네트워크 모델(network model) • 관계형 모델(relational model)

  10. 관계형 모델 • 관계형 구조 • 관계형 모델은 데이터를 행과 열로 구성된 이차원 테이블의 집합으로 표현한 모델 • 이 테이블을 관계(relation) • 관계 스키마 • 관계의 구조를 정의 • 관계 사례 • 관계 스키마에 삽입되는 실제 데이터 값

  11. 속성과 튜플 • 속성 • 관계에서 각 열을 속성(attribute) • 속성은 실제 데이터베이스에서는 필드라 말하고 DBMS에서는 열(column)이라고 표현 • 튜플 • 하나의 관계에서 각 행을 튜플(tuple) • 즉 튜플은 관계에서 정의된 모든 속성 값들의 집합 • 튜플은 실제 데이터베이스에서는 레코드라 말하고 DBMS에서는 행(column)이라고 표현 • 도메인 • 하나의 속성이 취할 수 있는 모든 값의 범위를 의미

  12. • 키(key) • 관계에서 튜플들을 유일(uniqueness)하게 구별할 수 있는 하나 이상의 속성의 집합 • 종류 • 후보키(candidate key) • 하나의 관계에서 유일성과 최소성(minimality)을 만족하는 키 • 주키(primary key) • 주키는 관계에서 여러 튜플 중에서 하나의 튜플을 식별하는 역할을 수행 • 외래키(foreign key) • 외래키는 어느 관계의 속성들 중에서 일부가 다른 관계의 주키가 될 때, 이 키를 외래키라 함. • 이 외래키를 이용하여 관계와 관계를 서로 연결할 수 있음.

  13. 관계에 대한 연산 : 삽입(insert) • Insert • 관계에 하나의 튜플을 삽입하는 연산 • 관계에서는 튜플의 순서는 의미가 없으므로 삽입되는 튜플의 순서는 상관하지 않음. • 주어진 학생 관계에 튜플 (20073007, 김 남훈, 19891018, 010-5948-2875)을 삽입한 결과

  14. 관계에 대한 연산 : 삭제(delete) • Delete • 삭제 연산은 관계에서 관련된 튜플을 삭제하는 연산 • 주어진 학생 관계에서 핸드폰 번호가 011으로 시작하는 튜플을 삭제하는 연산을 실행

  15. 관계에 대한 연산 : 수정(update) • Update • 수정 연산은 관계에서 관련된 속성 값을 수정하는 연산 • 주어진 학생 관계에서 학번이 20073004인 학생에 대한 생년월일을 19891010으로 수정하는 연산

  16. 관계에 대한 연산 : 조회(select) • Select • 관계에서 관련된 튜플에서 부분 집합의 튜플과 속성으로 구성된 새로운 관계를 생성하는 연산 • 조회 연산은 주어진 관계에서 튜플을 선택하기 위하여 관계의 특정 속성만을 지정 가능 • 주어진 학생 관계에서 태어난 연도가 1988년인 학생의 학번, 이름, 생년월일을 조회하는 연산을 실행

  17. DBMS 정의와 구성 • 데이터베이스 관리시스템 • DBMS: Database Management System • 데이터베이스를 정의하고, • 데이터베이스를 구축하고, • 데이터베이스를 조작하고, • 데이터베이스를 제어하여 • 데이터베이스에서 정보를 쉽게 활용할 수 있도록 만든 프로그램이자 소프트웨어

  18. DBMS 구성 • 저장 관리자(Storage Manager) • 질의 처리기(Query Processor) • DBMS 인터페이스 도구(DBMS Interface Tool)

  19. DBMS 종류(1) • MySql • MySQL은 대표적인 오픈 소스 DBMS 제품 • MySQL은 원래 mSQL이라는 DBMS에서 기반이 되어 새로 개발된 DBMS

  20. DBMS 종류(2) • 오라클 • 1977년 설립된 오라클(Oracle) 사가 개발한 오라클은 세계적으로 가장 성공한 DBMS의 한 제품

  21. DBMS 종류(3) • SQL 서버 • 마이크로소프트 사의 SQL 서버(SQL Server)는 인텔 기반의 서버용 컴퓨터에서 널리 사용되는 DBMS • SQL 서버는 원래 사이베이스(Sybase) 사의 DBMS 엔진을 윈도우 NT에 탑재하면서 시작되어, 버전 4.2까지 사이베이스와 공동 개발을 함. • 마이크로소프트 사는 사이베이스의 제품을 완전히 사들여 독자적으로 DBMS의 내부 커널을 재설계하여 SQL 서버 6.0을 발표함.

  22. ODBC(1) • ODBC(Open Database Connectivity) • ODBC는 데이터베이스를 사용하기 위한 표준 개방형 응용 프로그램 • DBMS의 종류에 관계없이 어떤 응용 프로그램에서나 모두 접근하여 사용할 수 있도록 하기 위하여 마이크로소프트에서 개발한 데이터베이스 표준 접근 방법

  23. ODBC(2) • 장점 • 마이크로소프트는 DBMS를 위한 미들웨어인 ODBC(Open Database Connectivity) API(Application Programming Interface)를 제공하여 데이타베이스 개발을 더욱 쉽게 가능하게 함 • ODBC를 사용하면 여러 종류의 데이터베이스를 함께 사용할 수 있고 기존에 사용하던 데이터베이스를 교체한다 하더라도 응용 시스템을 계속해서 그대로 사용할 수 있어 비용을 절감할 수 있는 장점

  24. Thank You !

More Related