Database System 授課教師: 姚志佳.

Slides:



Advertisements
Similar presentations
数据库原理及应用(ORACLE)实用教程
Advertisements

An Introduction to Database Systems
An Introduction to Database System
第一章 会计信息系统 第一节 计算机会计概述.
数据库系统原理及应用 Database Theory and Application
第2章 資料庫系統 2-1 資料庫環境的四大組成元件 2-2 ANSI/SPARC的三層資料庫系統架構
第六章 資料倉儲與採礦技術 6.1 資料倉儲與採礦定義 6.2 資料採礦之步驟與技術分類 6.3 資料採礦在顧客關係管理之應用
第2章 資料庫系統 2-1 資料庫環境的四大組成元件 2-2 ANSI/SPARC的三層資料庫系統架構
第一章 認識資料庫系統.
第 15 章 資料庫系統.
第6章 資料庫管理系統 6-1 關聯式資料庫管理系統 6-2 SQL Server資料庫管理系統
第1章 資料庫系統 1-1 資料庫系統的基礎 1-2 三層資料庫系統架構 1-3 資料庫綱要 1-4 資料庫管理系統 1-5 資料庫管理師
数据库原理与应用.
Ch01 資料庫系統理論 資料庫管理.
数据库技术及应用 华中科技大学管理学院 课程网址:
数据库原理与应用     制作人:王春玲         黄金燕         张惠萍         陈志泊 人民邮电出版社.
第一章 資料庫系統基本觀念.
第3章 資料庫模型與處理架構 3-1 資料模型的基礎 3-6 分散式處理架構 實體關聯模型(E-R Model)
主題五 CPU Learning Lab.
題目:十六對一多工器 姓名:李國豪 學號:B
歐陽芳泉 清雲科技大學資訊管理系 第1章 資料處理與資料庫 歐陽芳泉 清雲科技大學資訊管理系.
程式語言的基礎 Input Output Program 世代 程式語言 第一世代 Machine language 第二世代
程式設計概論 1.1 程式設計概論 程式語言的演進 物件導向程式 程式開發流程 1.2 C++開發工具
Chapter 1 Introduction.
本 章 重 點 12-1 資料庫管理系統的基礎概念 12-2 SQL(Structured Query Language)語法簡介
第一篇 Unix/Linux 操作介面 第 1 章 Unix/Linux 系統概論 第 2 章 開始使用 Unix/Linux
Chap 2 資料庫系統.
Microsoft SQL Server 2000 李金双.
Chap 3 資料庫模型與處理架構.
資料庫管理 操作DBMS 指導教授:楊維邦  助教:廖皓翔.
第五章 關聯式資料庫的理論基礎.
資料庫操作.
使用VHDL設計—4位元位移器 通訊一甲 B 楊穎穆.
計算機概論 第十章 檔案與資料庫管理系統 陳維魁/陳邦治 旗標出版社.
SQL Stored Procedure SQL 預存程序.
無線射頻識別系統(RFID) 基本原理及發展與應用
AnQing Teachers College Department of Computer & Information
ASP.NET基本設計與操作 建國科技大學 資管系 饒瑞佶 2007年.
安裝JDK 安裝Eclipse Eclipse 中文化
資料庫系統導論.
OpenID與WordPress使用說明
連結資料庫管理系統.
App Inventor2呼叫PHP存取MySQL
第二章 SPSS的使用 2.1 啟動SPSS系統 2.2 結束SPSS系統 2.3 資料分析之相關檔案 2.4 如何使用SPSS軟體.
管理資訊系統導論 資訊系統的定義與概念.
Java 程式設計 講師:FrankLin.
網路安全技術 OSI七層 學生:A 郭瀝婷 指導教授:梁明章.
Topic Introduction—RMI
TB-054A  周天穎 編著 儒林圖書公司 發行.
CH03 行銷資訊系統資料庫模組--資料庫概論
第 19 章 XML記憶體執行模式.
江西财经大学《数据库应用》精品课程组 2011年 Comments are welcome!
第一章 数 据 库 概 述 第一节 引言 第二节 数据库基本概念 第三节 数据库系统结构 第四节 数据模型 第五节 数据库管理系统
PHP與MySQL 入門學習指南 凱文瑞克 著 第 22 章 SQL 介紹與建立MySQL資料庫.
使用VHDL設計 七段顯示器 通訊工程系 一年甲班 姓名 : 蘇建宇 學號 : B
其他 ER 相關觀念 以及OO模型 國立中央大學 資訊管理系 范錚強 2002 中央大學。范錚強.
GridView操作 (II).
智慧型手機程式設計 建國科技大學資管系 饒瑞佶 2011年(992).
MicroSim pspice.
電腦概論考題分析 佛學資訊組 碩一 張榮顯.
第 4 章 認識 SQL 語言與資料型別.
黃影雯副教授講授 E_Mail Address:
資料表示方法 資料儲存單位.
資料結構與C++程式設計進階 期末考 講師:林業峻 CSIE, NTU 7/ 15, 2010.
連結資料庫 MYSQL.
多站台網路預約系統之 AJAX即時資料更新機制
SQLite資料庫 靜宜大學資管系 楊子青.
Chapter 4 Multi-Threads (多執行緒).
第 1 章 認識資料庫系統.
Develop and Build Drives by Visual C++ IDE
Presentation transcript:

Database System 授課教師: 姚志佳

教科書:資料庫系統-理論與設計實務(第二版) 作者:陳會安 出版社:學貫出版社

目錄 第1章: 檔案處理與資料庫 第2章: 資料庫系統 第3章: 資料庫模型與處理架構 第4章: 關聯式資料庫模型 第5章: 關聯式代數與計算 第6章: 資料庫設計與實體關聯模型 第7章: 關聯表的正規化 第8章: 關聯式資料庫管理系統

目錄 第9章: 關聯式資料庫設計工具 第10章: SQL定義、操作與控制指令 第11章: SQL基本查詢指令 第13章: 視界與資料庫程式設計 第14章: 交易管理與並行控制 第15章: 回復處理

Chap 1 檔案處理與資料庫 1-1 資料與資料處理 1-2 資料庫 1-3 檔案處理與資料庫系統 1-4 資料庫系統發展的歷史演進 1-5 資料庫技術的發展趨勢

資料與資料處理 資料 「資料」(Data)是指收集但是沒有經過整理和分析的原始數值、文字或符號,它是資訊的原始型態。「ANSI」(American National Standards Institute)定義的資料,如下: 資料是使用正規方式所代表的事實、概念或指令,可以適用人類或程式間進行通訊、解釋和處理。 資料可以代表一些特性或數量,換句話說,我們可以針對資料執行一些操作來轉換成資訊,這就是「資料處理」(Data Processing)。

資料與資料處理 資訊 「資訊」(Information)是經過處理的資料,在經過整理和分析後,就可以成為有用或可供決策的資訊。換句話說,資料是資訊的原始型態,資訊是處理後的有意義資料。 資料處理 「資料處理」(Data Processing)是使用!特定方法將資料轉換成資訊的過程,我們需要將資料進行搜尋、排序、分類、計算、收集、選取或結合等操作,以便產生所需的資訊 。

資料階層 資料階層一共分成六個階層:位元、位元組、欄位、記錄、檔案和資料庫,如下圖所示:

資料階層 位元(Bits) 位元組(Bytes) 欄位(Fields) 欄位是由1或多個位元組或字元組成,屬於相同性質資料組成的資料項目,以欄位名稱來識別。例如:一組字元組成的字串"Joe"和"Chen",可以使用欄位名稱"姓名"來識別,或數值33、29,可以使用欄位名稱"年齡"來識別等。

資料階層 記錄(Records) 檔案(Files) 記錄是相關欄位的集合,記錄的欄位是儲存 「實體」(Entity)的一些「屬性」 (Attributes)值,實體是用來描述真實世界 的東西。例如:學生實體,欄位是學生的屬 性,記錄則為學生的詳細資料。例如:姓名、 年齡、地址等欄位的值。 檔案(Files) 檔案就是相關聯記錄的集合,以檔案名稱儲 存在電腦周邊裝置的磁碟。

資料階層 資料庫 相關檔案的集合,使用「資料庫管理系統」(Database Management System)集中管理資料庫中儲存的資料。

資料庫 資料庫系統是由「資料庫」(Database)和「資料庫管理系統」(Database Mangement System,DBMS)所組成,如下圖所示:

資料庫 資料庫儲存的資料包括:資料和資料本身的定義,這是資料本身的描述資料,稱為「中繼資料」(Meta-data,The data about data)。 通常這些資料是使用不同檔案來分開儲存,所以在資料階層的資料庫是一個相關聯檔案的集合。

資料庫的定義 定義1.1:資料庫(Database)是一個儲存資料的電子文件檔案櫃(An Electronic Filing Cabinet)。 資料庫的結構是由資料模型(Data Model)來決定,這是一種高階模型來描述儲存的資料,也就是描述資料庫的結構。 資料庫是一種長存資料的集合

資料塑模 資料庫儲存是結構化收集的「實體」(Entity)資料,實體是現實生活中存在的東西,只是將它塑模(Modeling),如下圖所示:

資料塑模 使用模型來解釋真實東西、事件和其關聯性。以資料庫來說,塑模的主要目的是定義資料的結構。 邏輯關聯資料 資料庫是將真實東西轉換成模型定義的資料結構。例如:塑模一間大學或技術學院,也就是從大學或技術學院儲存的資料中識別出: 實體 屬性 關聯性:一對一、一對多、多對多

資料庫資料的三個層次 資料模型(Data Model):將真實東西轉換成資料模型的實體、屬性和關聯性,使用圖形化的高階模型來描述這些資料,通常使用在資料庫設計階段來分析資料庫儲存的資料。 中繼資料(Meta-data):用來描述資料庫儲存的是什麼樣的資料,定義資料列(Rows)或記錄(Record)型態,也就是定義各資料欄(Columns)或資料項目(Data Item)的型態。 資料(Data):資料庫實際儲存的資料列(Rows),或稱為記錄(Records)。

檔案處理與資料庫系統 「檔案系統」(File System)是一種非常原始的資料庫,不論是UNIX/Linux檔案系統,Windows作業系統的NTFS檔案系統,均使用相同觀念,以檔案方式儲存,我們可以撰寫應用程式處理檔案儲存的資料,稱為「檔案處理系統」(File Processing System)。

檔案處理與資料庫系統 檔案處理方式-架構

檔案處理與資料庫系統 檔案處理方式-資料檔案的內容 檔案管理系統的程式是處理邏輯檔案的資料,邏輯檔案的每一列是一筆記錄,第一列是欄位名稱的資料定義。 不過實際儲存的檔案內容並沒有第一列的欄位名稱,只有學生資料,檔案可以使用固定欄寬(例如:前4個字元是學號,第5~15個字元是姓名等,以此類推)或以特殊分隔字元儲存欄位資料,例如: S001:江小魚:中和景平路1000號:02-22222222:1978/2/2 S002:劉得華:桃園巿三民路1000號:03-33333333:1982/3/3 S003:郭富成:台中巿中港路三段500號:04-44444444:1978/5/5 S004:張學有:高雄市四維路1000號:05-55555555:1979/6/6

檔案處理與資料庫系統 檔案處理系統的問題 結構與資料相依(Structural and Data Dependence) 結構相依:檔案儲存的資料結構是由程式碼定義 資料相依:更改記錄的欄位定義,需要更改所有程式的資料管理模組 資料分隔與孤立(Data Separation and Isolation):資料常因不同單位而分別儲存在不同檔案 資料沒有集中管理 檔案格式不相容 更新系統困難

檔案處理與資料庫系統 檔案處理系統的問題 3. 資料重複與不一致(Data Redundancy and Inconsistency) 4. 多使用者問題(Multiple Users Problems) 5. 安全問題(Security Problems) 6. 資料完整性問題(Data Integrity Problems)

資料庫方式 架構

資料庫系統發展的歷史演進

1960年代:網路與階層式資料庫模型 1960年代資料庫系統開始萌芽,檔案從循序索引(Indexed-sequential)的循序存取轉變成「集合導向記錄模型」(Set-oriented Record Model)的直接存取。 1961年:Bachman替GE(General Electric)奇異設計第一套資料庫管理系統IDS(Integrated Data Store),1964年廣泛的使用,這是一套使用「網路式資料庫模型」(Network Database Model)的資料庫。 1965年:IBM公司開發「IMS」(Information Management System)是使用「階層式資料庫模型」(Hierarchical Database Model)的資料庫。

1970:關聯式資料庫模型與實體關聯模型-1 資料庫管理系統已經成為大學學科和研究領域,眾多使用網路式和階層式資料庫模型的商用資料庫大量出現在巿面。 1970年:IBM研究科學家E. F. Codd博士發表「關聯式資料庫模型」(Relational Database Model)的重要論文。 1976年:Peter Chen定義資料庫設計的「實體關聯模型」(Entity-Relationship Model),這是目前資料庫系統分析和設計的基礎。 1978年:ANSI定義ANSI/SPARC三層資料庫系統架構。

1970:關聯式資料庫模型與實體關聯模型-2 1970年代的後期,有二個主要的關聯式資料庫研究計劃開始進行: INGRES:加州大學柏克萊分校的研究計劃,最後成立Ingres公司,這個研究計劃開發的資料庫系統使用QUEL查詢語言,它是Informix、Sybase和SQL Server資料庫系統的前身。 System R:IBM公司的研究計劃,最後成為IBM的DB2和Oracle資料庫的前身,使用的SEQUEL查詢語言就是第四篇SQL結構化查詢語言的前身。 資料庫查詢語言(Query Language),在1970年代開始發展,例如:QUEL、SEQUEL、SQL和QBE查詢語言。

1980:關聯式資料庫與SQL結構化查詢語言 1980年代是商用關聯式資料庫大放異彩的年代,網路和階層式資料模型已經不再發展。80年代初期開發超過100個ANSI/SPARC關聯式資料庫系統,例如:DB2、Oracle、Sybase和Informix等。 1980年代中期:「SQL」(Structure Query Language)成為ISO標準的資料庫查詢語言,IBM DB2也成為IBM公司最重要的資料庫產品。 在1980年代後期:專家系統(Expert Database System)、物件導向資料庫管理系統(Object-Oriented Database Management System)和主從架構分散式系統逐漸成為資料庫系統的未來趨勢。

1990:物件導向式資料模型與主從架構-1 1990年代關聯式資料庫的相關技術仍然持續的發展,應用物件導向觀念的資料庫模型也逐漸成形,如下所示: 物件導向式資料庫模型(Object-Orient Database Model):這是使用物件(Object)觀念代替記錄儲存資料,以繼承減少資料重複,因為程式語言也支援物件導向,所以資料庫與程式語言可以使用一致的資料模型。 物件關聯式資料庫模型(Object-Relational Database Model):這是由Won Kim和Michael Stonebraker博士研究的資料庫模型,將物件導向的觀念整合至關聯式資料庫模型,強調這不是革命(Revolution),而是進化(Evolution)。

1990:物件導向式資料模型與主從架構-2 隨著Internet與WWW的興起和個人電腦的普及,集中處理的資料庫系統已經改為分散式主從架構(Client/Server)資料庫系統,將系統區分成兩個部分,如下所示: 客戶端(Client):從端的應用程式負責使用者的資料輸入和顯示輸出的結果。 伺服端(Server):主端的資料庫系統是負責回應從端的請求,將查詢結果傳回從端的應用程式。 再加上平行資料庫處理(Parallel Database Processing)應用在關聯式資料庫上,可以將表格的資料水平或重直分割成多個資料庫且並行的進行資料處理,即「分散式資料庫系統」(Distributed Database System)。

資料庫技術的發展趨勢