7

ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

Embed Size (px)

Citation preview

Page 1: ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

Access 2003 中文版實務

01 -2

1-1 認識資料庫

某位企業界的經營者曾說:「未來網際網路界有幾種人可以賺到錢:

擁有 DataBase 的人,整理 DataBase 的人,管理 DataBase 的人以及應用

DataBase 的人」,這句話已經充分說明了資料庫的重要性,而到底什麼是

DataBase 呢?這一節將為您揭開資料庫的面紗。

1-1.1 什麼是資料庫

其實,資料庫(DataBase)是一個極為通俗的名詞,一般人對資料庫的

理解是一群資料的集合,例如:從事銷售業務的廠商收集客戶的基本資料,

久而久之,就可以建立龐大的客戶基本資料,形成客戶資料庫;唱片出版

公司不斷發行音樂唱片,將曾經發行過的音樂資料累積起來,就可以形成

非常有價值的音樂資料庫;把蒐集卡片當作嗜好的人,不斷累積各式各樣

的卡片,也就擁有卡片資料庫;具有報紙新聞剪貼習慣的人,則可以擁有

新聞資料庫。只要具有蒐集資料習慣的個人或企業,都可能逐漸累積出各

種不同特性的大小資料庫。

從查詢的角度來看,一個完整的資料庫,必須能從資料庫中迅速查詢

到想要的資料,如果所蒐集的資料沒有經過整理,則形同垃圾資料查詢不

易,失去了資料庫的功能。

嚴格的說,擁有豐富的資料並不等於擁有資料庫,建立資料庫的過程

中,最重要的是資料整理的工作,能夠把資料整理成具有相同屬性的格式。

儲存在電腦上的資料庫(本書中簡稱為資料庫),則有更嚴謹的定義,

除了把具有相同屬性的資料集合起來外,還必須建立適當的資料結構,以

最少重複的形式儲存在儲存設備中。資料庫是資料表( table)的集合體,一

個資料庫可能有一個或多個資料表;資料表是由許多相同格式的資料記錄

(record)所組成;在資料記錄中的每一個屬性稱為欄位(field)。

Page 2: ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

資料管理 So Easy

chapter

01 -3

01

換言之,橫向的資料記錄和縱向的屬性欄位,便組織成一個資料表,

儲存到電腦儲存設備後,就成了資料庫檔案。

在客戶資料庫中,您可以設計一個客戶基本記錄資料表,把每一位客

戶的基本資料存放在一筆紀錄中;在每一筆記錄中均有客戶的姓名、住址、

電話、職業等屬性;將每一筆資料累積起來,就成為客戶基本資料表,另

外還可以再建立客戶交易資料表、客戶服務資料表等。

資料表、記錄、欄位的關係

常見的資料庫有通訊資料庫、學籍資料庫、成績資料庫等,在資料庫

中可以只有一個資料表,也可以把數十甚至數百個資料表集合起來。

用來建立資料庫系統的軟體種類很多,例如: Access、 FoxPro、

Informix 、Oracle、Sybase、DB2 等。

1-1.2 什麼是資料庫管理系統

簡言之,資料庫管理系統(Data Base Management System,簡稱為

DBMS)是用來管理資料庫的軟體系統,是使用者和資料庫間的軟體介面,

使用者可以透過資料庫管理系統下達處理資料庫的命令,例如:增加新的

資料(Append)、更改資料(Update)、刪除資料(Delete)和搜尋資料(Search)

等。

欄位

資料表

記錄

記錄

欄位 欄位

Page 3: ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

Access 2003 中文版實務

01 -4

建立資料庫的目的,通常是為了提供多人同時使用,因此必須設計一

套完整的管理規範,以便有效管理、維護資料庫的正常使用。資料庫管理

系統就是提供這種功能需求的系統,包括使用權限、密碼管理、資料增刪、

資料查詢、報表列印、資料備份等等。

使用者、資料庫管理系統和資料庫間的關係圖如下:

使用者

使者用

使用者

資料庫資料庫

管理系統

資料庫管理系統是一組管理資料庫的程式,可以用來設計資料庫管理

系統的程式種類很多,大多數的資料庫系統均提供程式開發工具組,例如

Access、FoxPro、Informix 、Oracle、Sybase、DB2、SQL Server 等知名資

料庫系統。當然,許多高階程式語言如 Visual Basic、Delphi、C++、JAVA

等也可以用來開發資料庫管理系統。

選擇資料庫管理系統時,除了要考慮採購成本和軟體性能外,還必須

評估使用方法、復原能力、廠商維護能力、擴充性、轉換性,以及程式設

計是否容易等因素。

Page 4: ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

資料管理 So Easy

chapter

01 - 5

01

1-1.3 資料庫的資料模式

在 1-1.1 節中曾介紹什麼是資料庫,其中介紹到資料表、記錄與欄位等

觀 念 , 若 進 一 步 探 討 其 資 料 模 式 , 常 見 的 資 料 庫 可 分 為 階 層 式

(hierarchical)、網狀式(network)、關聯式(relational)等三種資料模式,

分別說明如下:

階層式資料模式(Hierarchical Data Model):階層式資料模式是最早

出現的資料庫模式之一,例如 1968 年 IBM 推出的 IMS(Information

Management System),這種資料模式由許多的資料樹( tree)組合而成,

而每一個資料樹又由許多資料元件組成,也就是一對一或一對多的資料

關係,尋找資料時,需從樹根( root)開始,一筆一筆沿連結找,主要

的特色是不易使用,當需要應用在不同情況時,容易造成資料重覆,資

料維護較為困難。

網狀式資料模式(Network Data Model):網狀式資料模式也是最早出

現的資料庫模式之一,例如 IDMS( Integrated DataBase Management

System)即是使用網狀資料模式,這種資料模式是階層式資料模式的延

伸型態,可支援多對多的資料關係,主要的特色有不易取用、不易使用、

存取路徑須事先設定,當需要重新建立關係或新連結時,非常麻煩。

關聯式資料模式(Relational Data Model):關聯式資料模式是當今應

用最普遍的資料模式,也是本書所介紹的軟體 Access 所採用的資料模

式。關聯式資料模式是採用二維陣列的資料表來建立資料的關係,資料

表由記錄中的資料列和資料欄所組成,兩個資料表間的關係使用一個相

同的資料欄來建立關聯,主要的特色有易取用資料、易使用、有彈性、

架構簡單。

除了上述資料模式外,尚有其它不同模式的資料庫系統,例如:物件

導向資料庫系統,也是越來越被重視的資料庫系統。

Page 5: ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

Access 2003 中文版實務

01 -6

1-1.4 什麼是 SQL 資料庫查詢語言

SQL�(Structure Query Language) 結構化查詢語言是一種標準的

資料庫查詢語言,使用 SQL 查詢語法,可以查詢大多數的資料庫系統。從

另一個角度來看,市面上絕大多數的資料庫系統均支援 SQL 語法,因此,

資料庫管理員只要熟悉 SQL 語法,就已經具備操作大多數資料庫系統的能

力。

SQL 資料庫查詢語言主要的資料存取與查詢指令有下列四個:

Insert:在資料庫中新增一筆新的記錄資料。

Delete:刪除資料庫中的記錄資料。

Update:更新資料庫中的記錄資料。

Select:查詢資料庫的內容。

下面是 SQL 查詢語言的實例:

Select * FROM 通訊錄 WHERE 性別=í男í

上式中的指令表示從通訊錄資料表中選擇性別為男性的記錄。

又例如:

Insert INTO 通訊錄(姓名、電話)VALUE(í吳權威í、í27042762í)

上式中的指令表示在通訊錄資料表中新增一個記錄,並且在姓名、電

話欄位填入’吳權威’、’27042762’。

� SQL 源自 1970 年 E.F.Codd 提出關聯式資料庫觀念時,就同時提出了資料庫查詢語

言的構想,強調它是一種通用的資料存取方式。1974 年出現 SQL 的原型,稱為

SQUEL,到了 1980 年 SQL 語言正式誕生。

Page 6: ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

資料管理 So Easy

chapter

01 - 7

01

1-1.5 主從式資料庫

依照資料存取的架構,資料庫系統可分為中央集權式(Terminal-Host)

和主從式(Client-Server)兩種。

中央主機(Host)

終端機

(Terminal)

終端機

(Terminal)

終端機

(Terminal)

終端機

(Terminal)

終端機

(Terminal)

伺服主機

(Server)客戶端

(Client)

客戶端

(Client)

客戶端

(Client)

客戶端

(Client)

客戶端

(Client)

中央集權式

主從式

中央集權式資料庫是早期存取資料庫的主要模式,使用者透過終端機

(Terminal)連接主機(Host)來存取資料庫。中央集權式資料存取架構,

所有資料處理的負荷均在主機端,當終端機的要求增多時,主機端的整體

效能就會隨之降低。

主從式資料庫存取架構與中央集權式最大的不同,是賦于在於使用者

端(Client)的電腦具有處理資料的能力,必要時再從主機端(Server)存

取資料,這種方式可以大幅降低主機端的負荷,因而提昇了資料處理的效

能。

主從式資料庫又可分成主從式集中資料庫與主從式分散資料庫兩種:

主從式集中資料庫:將資料庫儲存於網路上的特定節點上,所有來自客

戶端的要求都由這個節點的電腦系統負責管理。

主從式分散資料庫:是將資料庫儲存於不同電腦網路節點上,網路上各

節點需有獨立自主的能力,使得各節點的區域資料庫系統可支援區域內

的應用系統,各節點的資料則透過資料通訊網路形成連繫。

Page 7: ccess 2003 - 碁峰資訊epaper.gotop.com.tw/pdf/ACI009700.pdf · A ccess 2003 01-2 1-1 ... S ij^y ... FoxPro ; Informix ; Oracle ; Sybase ; DB2 A& 1-1.2 n o Data Base Management

Access 2003 中文版實務

01 -8

1-1.6 資料庫系統的應用

隨著資訊科技的蓬勃發展,為人類的生活模式帶來了極為深遠的影

響,電腦普遍應用於政府機構、私人企業、學校與家庭等各個領域,隨處

都可以看到電腦的蹤影,舉凡文件、報告、郵件、資料查詢、閱讀新聞等

等,人們都可以利用便利的電腦功能來完成。

在電腦應用領域中,最重要且成本最高的當屬資料庫系統的建立(當

然未來最值錢的也是資料庫系統)。資料庫系統的應用範圍相當廣泛,例

如:銀行的金融電腦化系統、股市的股票交易系統、戶政事務所的戶籍資

料系統、學校機構的行政電腦化系統(包括學籍系統、排課系統、選課系

統、成績處理系統、會計系統、出納系統、人事系統、文書管理系統、財

產管理系統等)、圖書館的圖書資料查詢系統、航空公司的電腦化訂票系

統、中小企業的進銷存管理系統等等。

圖書資料庫查詢系統畫面 航空公司網路訂票系統畫面