皇甫大雙
摘要:數據庫設計在整個軟件項目開發(fā)中起到非常重要的作用,是整個軟件應用的根基,是軟件設計的起點,它是衡量一個系統(tǒng)是否設計實用的重要標志,一個合理的數據庫設計能夠提高系統(tǒng)的執(zhí)行效率,便于后期系統(tǒng)的維護和擴展。
關鍵詞:數據庫設計;標志;擴展
中圖分類號:TP311? ? ? 文獻標識碼:A? ? ?文章編號:1009-3044(2018)35-0020-02
1 數據庫簡介
1.1 數據庫的概念
計算機在進行事務處理時,會在計算機系統(tǒng)中存入大量的數據,數據是對現實社會中事物屬性和特性的描述和記錄的一種方法和手段。概括地講,數據庫(database)其實就是一個按照一定的組織結構和規(guī)則存放所需數據的倉庫,為了方便的管理這些數據,數據庫管理系統(tǒng)為我們提供了很多的方法來管理它們。
大量的數據被收集之后,需要我們更進一步地對這些數據歸檔、篩選,從中分析、提煉出有用的信息。在計算機沒被廣泛使用之前,我們存放數據主要是采用紙質的形式存放在文件柜中,但是隨著信息時代的快速發(fā)展,數據量呈現了爆炸性的增長,采用以往傳統(tǒng)型的保存數據的方式已經不能滿足現在我們的需求,為此就要借助專門的數據庫技術保存和管理這些數據。
1.2 數據庫的種類
數據庫按照不同的數據結構和組織關系一般被分為如下三種,分別是網絡式數據庫、層次式數據庫以及關系式數據庫,而在這三種數據庫種類中關系數據庫是目前最受歡迎、使用最為廣泛的數據模型。本文就以最為常用的關系數據庫SQL Server為例來進行相關知識的闡述。
1.3 常用關系型數據庫
目前,廣泛使用的數據庫管理系統(tǒng)軟件有DB2、ORACLE、SYBASE、SQL Server、Visual Foxpro、ACCESS、MySQL等,其中使用頻率最高的為ORACLE、SQL Server和MySQL三種數據庫管理系統(tǒng)。
2 數據庫設計遵循的過程
簡單概括來講,一個合理的、可用的數據庫都需要經過如下幾個設計階段,分別為用戶需求分析階段、概念模型設計階段、邏輯結構設計階段、物理結構設計階段。
2.1 需求分析階段
該階段是數據庫系統(tǒng)設計過程中最為重要的一個環(huán)節(jié),需求分析的好壞直接影響系統(tǒng)整個功能的體驗和使用。設計人員和用戶直接溝通,全面了解用戶對系統(tǒng)功能實現的要求,把用戶的需求進一步的分析整理成說明書。
2.2 概念設計階段
概念設計階段的主要任務是將在需求分析環(huán)節(jié)做好的說明書轉化為一種通用的概念模型,主要方法是首先根據獨立的應用設計出局部E-R圖,緊接著把這些相對獨立、互不相連的E-R模型圖歸并起來,消除他們之間存在的冗余,設計出該系統(tǒng)總體的E-R模型需求。
2.3 邏輯設計階段
在邏輯設計階段需要完成的是將系統(tǒng)總體的E-R模型轉換為DBMS能接受的網絡式數據庫、層次式數據庫以及關系式數據庫三種種類中的其中一個,目前較為流行、通用的是轉為關系型數據庫,在該關系型數據庫中完成表的結構和關聯(lián)設計。
2.4 物理設計階段
物理設計的目的是確定數據庫的存儲結構,訪問路徑和外存儲器的分配策略。不過這些工作的大部分可由數據庫管理系統(tǒng)來獨立完成,僅有一小部分如表的名稱,字段的類型、長度、名稱由設計人員來完成,而數據庫文件的長度等等都可以由DBMS來完成。
3 相關概念和技術
在設計數據庫的過程中,特別是在概念設計和邏輯設計階段,經常會用到一些相關的概念和技術,下面將分別加以介紹和闡述。
3.1 常用的對象
(1) 實體:在現實世界中客觀存在并可相互區(qū)別的事物被稱為為實體,如一個班級、一個學生。
(2) 實體的屬性:實體本身所具有的某些特征,如學生的學號,姓名,性別等,對應表中的列。
(3) 屬性的域:屬性的取值范圍稱為該屬性的域。
(4) 實體結構:實體屬性的集合稱為實體結構。
(5) 實體集:實體結構相同的實體集合稱為實體集。
(6) )實體的聯(lián)系:通常是指不同實體型的實體集之間的聯(lián)系,實體之間的聯(lián)系有一對一(1:1),一對多(1:N),多對多(M:N)等多種類型
3.2 E-R方法
E-R方法,即實體-聯(lián)系方法,該方法直接從現實世界中抽象出實體與實體間的聯(lián)系,然后使用E-R圖來表示數據模型。在E-R圖中實體用方框表示;聯(lián)系用菱形表示,同時用邊將其與對應的實體連接起來,并在邊上標上聯(lián)系的類型(一對一,一對多,多對多)。
3.3 實體關系的3種基本類型
(1) 一對一關系
假設在兩個實體A和B中,實體A中的一個對象在實體B中有唯一的對象與之相對應,同樣,實體B中的一個對象在實體A中有唯一的對象與之對應,這種相對應的關系稱為“A與B一對一”的關系。
(2) 一對多關系
假設在兩個實體A和B中,實體A中的一個對象在實體B中有多個對象與之相對應,但實體B中的一個對象在實體A中只有一個對象與之對應,這種相對應的關系稱為“A與B一對多”的關系。
(3) 多對多關系
假設在兩個實體A和B中,實體A中的一個對象在實體B中有多個對象與之相對應,同樣,實體B中的一個對象在實體A中也存在多個對象與之對應,這種相對應的關系稱為“A與B一對多”的關系。
4 學生選課數據庫設計的方法和策略
4.1 需求分析
學校要使用一套學生管理系統(tǒng),具體要求如下:
實體1:學生。屬性:學號、姓名、性別、生日、籍貫、學院編號。
實體2:學院。屬性:學院編號、學院名稱,主任。
實體3:課程。屬性:課程編號、課程名稱、學分。
學生屬于某一學院,學習某門課程獲得成績。
4.2 概念設計
根據各實體的屬性和實體之間的關系繪制E-R圖如圖1所示。
4.3 邏輯設計
由上述E-R圖轉換為關系模型如下:
學生(學號,姓名,性別,生日,籍貫,學院編號)
學院(學院編號,學院名稱,主任)
課程(課程編號,課程名稱,學分)
成績(學號,課程編號,成績)
4.4 物理設計
根據SQL Server2012的數據庫結構,指定數據庫文件的名稱,設計表的結構。
數據庫文件名:學生管理系統(tǒng)。
對應的表有學生、學院、課程、成績,表的結構如下表所示。
5 總結
關系型數據庫設計的步驟一般主要分為需求分析、概念設計、邏輯設計、物理設計以及運行與維護設計幾個步驟,每個階段嚴格按照相應的要求和規(guī)則,則會設計出較為合理、效率高、符合要求的數據庫。
參考文獻:
[1] 姚麗娟. SQLServer2012數據庫技術與應用[M].北京:人民郵電出版社, 2017.
[2] 龐英智. SQLServer2012數據庫技術及應用[M].北京:高等教育出版社,2018.
[通聯(lián)編輯:梁書]