版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第1章數(shù)據(jù)庫(kù)的設(shè)計(jì)1.1任務(wù)描述:
本章完成項(xiàng)目的第1個(gè)任務(wù):設(shè)計(jì)大學(xué)生選課管理數(shù)據(jù)庫(kù),分析該數(shù)據(jù)庫(kù)應(yīng)含有幾個(gè)表,這幾個(gè)表之間有什么關(guān)系,畫出這幾個(gè)表之間的關(guān)系模型,并分別設(shè)計(jì)出這幾個(gè)表,注意它們的主鍵或外鍵以及它們之間的聯(lián)系。超市購(gòu)物使用信用卡購(gòu)物在旅行社預(yù)定假期使用圖書館出租錄像使用Internet1.2數(shù)據(jù)庫(kù)舉例1.3數(shù)據(jù)庫(kù)的基本概念1、信息與數(shù)據(jù)
信息:信息是人們進(jìn)行各種活動(dòng)所需要的各種知識(shí),是現(xiàn)實(shí)世界各種狀態(tài)的反映。數(shù)據(jù):是描述信息的符號(hào),符號(hào)的形式多種多樣,如數(shù)值、文本、圖形、聲音等類型的數(shù)據(jù),用來(lái)反映不同類型的信息。2.?dāng)?shù)據(jù)處理
數(shù)據(jù)處理是指對(duì)各種形式的數(shù)據(jù)進(jìn)行收集、存儲(chǔ)、加工和傳播的一系列活動(dòng)的總和,其目的是從大量的、原始的數(shù)據(jù)中抽取、推導(dǎo)出對(duì)人們有價(jià)值的信息以作為行動(dòng)和決策的依據(jù)。1.3.1信息、數(shù)據(jù)與數(shù)據(jù)處理1.3.2數(shù)據(jù)庫(kù)的基本概念數(shù)據(jù)庫(kù)是自描述的:它除了包含用戶的源數(shù)據(jù)外,還包含關(guān)于它本身結(jié)構(gòu)的描述。這個(gè)描述稱為數(shù)據(jù)字典(或數(shù)據(jù)目錄,或元數(shù)據(jù))數(shù)據(jù)庫(kù)是集成記錄的集合。用戶數(shù)據(jù)文件是由這些記錄組合而成的。數(shù)據(jù)庫(kù)不僅僅包含用戶數(shù)據(jù)文件,它還包含其他內(nèi)容。數(shù)據(jù)庫(kù)包含4個(gè)要素:用戶數(shù)據(jù)、元數(shù)據(jù)、索引和應(yīng)用元數(shù)據(jù)。1.3.3數(shù)據(jù)庫(kù)系統(tǒng)
數(shù)據(jù)庫(kù)系統(tǒng):一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)實(shí)際可運(yùn)行的、按照數(shù)據(jù)庫(kù)方式存儲(chǔ)、維護(hù)和為應(yīng)用系統(tǒng)提供數(shù)據(jù)或信息支持的系統(tǒng)。它是存儲(chǔ)介質(zhì)、處理對(duì)象和管理系統(tǒng)的集合體。數(shù)據(jù)庫(kù)系統(tǒng)的組成:(1)數(shù)據(jù)庫(kù)(DB)是存放數(shù)據(jù)的倉(cāng)庫(kù),人們收集并抽取出一個(gè)應(yīng)用所需要的大量數(shù)據(jù)之后,應(yīng)將其保存起來(lái)以便進(jìn)一步加工處理,進(jìn)一步抽取有用的信息。(2)計(jì)算機(jī)硬件數(shù)據(jù)庫(kù)系統(tǒng)的硬件包括中央處理器、內(nèi)存、外存、輸入/輸出設(shè)備、數(shù)據(jù)通道等硬件設(shè)備。(3)計(jì)算機(jī)軟件:數(shù)據(jù)庫(kù)系統(tǒng)的軟件包括數(shù)據(jù)庫(kù)管理系統(tǒng)、操作系統(tǒng)、各種宿主語(yǔ)言和應(yīng)用開發(fā)支撐軟件等程序。(4)數(shù)據(jù)庫(kù)用戶,它包括:數(shù)據(jù)庫(kù)管理員(DBA)、專業(yè)用戶、應(yīng)用程序員、最終用戶。
數(shù)據(jù)庫(kù)管理系統(tǒng):
數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是指數(shù)據(jù)庫(kù)系統(tǒng)中對(duì)數(shù)據(jù)進(jìn)行管理的軟件系統(tǒng),它是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分,數(shù)據(jù)庫(kù)系統(tǒng)的一切操作,包括查詢、更新以及各種控制都是通過(guò)DBMS進(jìn)行的。它的基本功能包括:數(shù)據(jù)庫(kù)定義功能、數(shù)據(jù)庫(kù)操縱功能、數(shù)據(jù)控制功能、數(shù)據(jù)的服務(wù)功能。1.3.3數(shù)據(jù)庫(kù)系統(tǒng)數(shù)據(jù)庫(kù)管理員:
DBA的主要職責(zé)包括如下6個(gè)方面:(1)決定數(shù)據(jù)庫(kù)中存放哪些信息(2)決定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)和存取策略(3)定義數(shù)據(jù)庫(kù)的安全性要求和完整性約束條件(4)監(jiān)督和控制數(shù)據(jù)庫(kù)的使用和運(yùn)行(5)數(shù)據(jù)庫(kù)系統(tǒng)的性能改進(jìn)(6)數(shù)據(jù)庫(kù)系統(tǒng)和重組1.3.3數(shù)據(jù)庫(kù)系統(tǒng)1.4關(guān)系數(shù)據(jù)庫(kù)
1.4.1關(guān)系模型的基本概念關(guān)系模型由三部分組成:數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作、關(guān)系的完整性。關(guān)系數(shù)據(jù)庫(kù)與層次數(shù)據(jù)庫(kù)、網(wǎng)狀數(shù)據(jù)庫(kù)相比,具有簡(jiǎn)單靈活的數(shù)據(jù)模型、較高的數(shù)據(jù)獨(dú)立性,能提供有著良好性能的語(yǔ)言接口,并且有著比較堅(jiān)實(shí)的理論基礎(chǔ)等優(yōu)點(diǎn),它是目前最流行的數(shù)據(jù)庫(kù)系統(tǒng)。1.4.2關(guān)系模型的基本術(shù)語(yǔ)
1.關(guān)系一個(gè)關(guān)系對(duì)應(yīng)一個(gè)二維表,二維表名就是關(guān)系名
2.屬性及值域二維表中的列(字段)稱為關(guān)系的屬性。關(guān)系的屬性包括屬性名和屬性值兩部分,其列名即為屬性名,列值即為屬性值。屬性值的取值范圍稱為值域,每一個(gè)屬性對(duì)應(yīng)一個(gè)值域,不同屬性的值域可以相同1.4.2關(guān)系模型的基本術(shù)語(yǔ)3.關(guān)系模式二維表中的行定義(表頭)、記錄的類型,即對(duì)關(guān)系的描述為關(guān)系模式、關(guān)系模式的一般形式為:關(guān)系名(屬性1,屬性2,…,屬性n)
4.元組二維表中的一行,即每一條記錄的值稱為關(guān)系的一個(gè)元組。其中,每一個(gè)屬性的值稱為元組的分量。關(guān)系由關(guān)系模式和元組的集合組成。
5.鍵鍵由一個(gè)或幾個(gè)屬性組成,在實(shí)際使用中,有下列幾種鍵。(1)超鍵:在關(guān)系中能唯一標(biāo)識(shí)元組的屬性或?qū)傩缘慕M合稱為該關(guān)系的超鍵。(2)候選鍵:不含有多余屬性的超鍵稱為候選鍵。即在候選鍵中,若要再刪除屬性,就不是鍵了。(3)主鍵:用戶選用元組標(biāo)識(shí)的一個(gè)候選鍵稱為主鍵。
6.主屬性與非主屬性關(guān)系中包含在任何一個(gè)候選鍵中的屬性稱為主屬性,不包含在任何一個(gè)候選鍵中的屬性為非主屬性。
7.外鍵、參照關(guān)系與依賴關(guān)系當(dāng)關(guān)系中的某個(gè)屬性或?qū)傩缘慕M合雖然不是該關(guān)系的主鍵或只是主鍵的一部分,但卻是另一個(gè)關(guān)系的主鍵,而且其值來(lái)源于另一關(guān)系的主鍵值,稱該屬性或?qū)傩缘慕M合為這個(gè)關(guān)系的外鍵。以外鍵作為主鍵的關(guān)系稱為參照關(guān)系或主關(guān)系,外鍵所在的關(guān)系稱為依賴關(guān)系或從關(guān)系。在關(guān)系模型中通過(guò)外鍵實(shí)現(xiàn)兩個(gè)關(guān)系之間的關(guān)聯(lián)。1.4.2關(guān)系模型的基本術(shù)語(yǔ)1.4.3關(guān)系的定義和性質(zhì)
由于關(guān)系是若干元組的集合,可以用集合的觀點(diǎn)定義關(guān)系。關(guān)系是一個(gè)元數(shù)為K(K≥1)的元組的集合。即把關(guān)系看成是一個(gè)集合,集合中的元素是元組,每個(gè)元組屬性個(gè)數(shù)應(yīng)相同。在關(guān)系模型中,對(duì)關(guān)系作了下列規(guī)范性限制。1.關(guān)系中的每一個(gè)屬性值是不可分解的。2.每一個(gè)關(guān)系模式中屬性的數(shù)據(jù)模型以及屬性的個(gè)數(shù)是固定的,并且每個(gè)屬性必須命名,在同一個(gè)關(guān)系模式中,屬性名必須是互不相同的。3.每一個(gè)關(guān)系僅有一種關(guān)系模式。4.在關(guān)系中元組的順序是無(wú)關(guān)緊要的,即沒(méi)有行序。5.在關(guān)系中屬性的順序可任意交換,交換是應(yīng)連同屬性名一起交換,即沒(méi)有列序。6.在同一個(gè)關(guān)系中不允許出現(xiàn)完全相同的元組。1.4.4關(guān)系模型的三要素
關(guān)系模型由三部分組成:數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作及關(guān)系的完整性規(guī)則1.?dāng)?shù)據(jù)結(jié)構(gòu)關(guān)系模型中所選用的數(shù)據(jù)結(jié)構(gòu)為集合論中的關(guān)系,即用關(guān)系來(lái)描述實(shí)體集,同時(shí)也用關(guān)系來(lái)描述實(shí)體之間的關(guān)系。2.關(guān)系操作關(guān)系操作能力的表達(dá)有兩種不同的方法。(1)代數(shù)方法,也稱為關(guān)系代數(shù)。它是以集合的操作為基礎(chǔ),應(yīng)用對(duì)關(guān)系的專門運(yùn)算來(lái)表達(dá)查詢的要求。(2)邏輯方法,也稱為關(guān)系演算。它是以謂詞演算為基礎(chǔ),通過(guò)元組必須滿足的謂詞公式來(lái)表達(dá)查詢要求。3.關(guān)系模型的完整性規(guī)則數(shù)據(jù)完整性由完整性規(guī)則來(lái)定義,關(guān)系模型的完整性規(guī)則是對(duì)關(guān)系的某種約束條件。(1)實(shí)體完整性限定關(guān)系中的主鍵值不能為空。關(guān)系的這種約束,稱為實(shí)體完整性(2)參照完整性參照完整性是用于約束外鍵的,即,若F是關(guān)系R中對(duì)應(yīng)關(guān)系S的外鍵,則對(duì)于R中每個(gè)元組在F上的值必須為以下值:①取空值(F的每個(gè)屬性值均為空)。②等于S中某個(gè)元組的主鍵值。(3)用戶定義的完整性關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)還允許用戶定義某一具體數(shù)據(jù)庫(kù)所涉及的數(shù)據(jù)必須滿足的約束條件。這種約束條件是對(duì)數(shù)據(jù)在語(yǔ)義范疇的描述,由具體應(yīng)用環(huán)境來(lái)決定,這就是用戶定義的完整性。1.4.4關(guān)系模型的三要素
只有采用較好的數(shù)據(jù)庫(kù)設(shè)計(jì),才能比較迅速、高效地創(chuàng)建一個(gè)設(shè)計(jì)完善的數(shù)據(jù)庫(kù),為訪問(wèn)所需的信息提供方便。在設(shè)計(jì)時(shí)打好堅(jiān)實(shí)的基礎(chǔ),設(shè)計(jì)出結(jié)構(gòu)合理的數(shù)據(jù)庫(kù),會(huì)節(jié)省日后管理數(shù)據(jù)庫(kù)所需要的時(shí)間。本節(jié)將在避免談及關(guān)系數(shù)據(jù)庫(kù)規(guī)范化所波及的理論的前提下,通俗地介紹在SQLServer中設(shè)計(jì)關(guān)系數(shù)據(jù)庫(kù)的方法。1.5關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)1.5.1數(shù)據(jù)庫(kù)設(shè)計(jì)步驟1.設(shè)計(jì)原則
為了合理地組織數(shù)據(jù),應(yīng)遵從以下基本設(shè)計(jì)原則:(1)關(guān)系數(shù)據(jù)庫(kù)的設(shè)計(jì)應(yīng)遵從概念單一化“一事一地”的原則(2)避免在表之間出現(xiàn)重復(fù)字段(3)表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素(4)用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系1.5.1數(shù)據(jù)庫(kù)設(shè)計(jì)步驟2.設(shè)計(jì)的步驟(1)需求分析:確定建立數(shù)據(jù)庫(kù)的目的這有助于確定數(shù)據(jù)庫(kù)保存哪些信息。(2)確定需求的表:著手把需求信息劃分成各個(gè)獨(dú)立的實(shí)體,例如客戶、職工、商品、定單、供應(yīng)商等。將每個(gè)實(shí)體設(shè)計(jì)為數(shù)據(jù)庫(kù)中的一個(gè)表。(3)確定所需字段:確定在每個(gè)表中要保存哪些字段。通過(guò)對(duì)這些字段的顯示或計(jì)算應(yīng)能夠得到所需求的信息。(4)確定聯(lián)系:對(duì)每個(gè)表進(jìn)行分析,確定一個(gè)表中的數(shù)據(jù)和其他表中的數(shù)據(jù)有何聯(lián)系。必要時(shí),可在表中加入字段或創(chuàng)建新表來(lái)明確地反映聯(lián)系。(5)設(shè)計(jì)求精:對(duì)設(shè)計(jì)進(jìn)一步分析,查找其中的錯(cuò)誤。創(chuàng)建表,在表中加入幾個(gè)示例數(shù)據(jù)記錄,看看能否從表中得到想要的結(jié)果。必要時(shí)應(yīng)調(diào)整設(shè)計(jì)。1.5.2數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程
1.需求分析用戶需求主要包括三個(gè)方面:(1)信息需求:用戶要從數(shù)據(jù)庫(kù)中獲得的信息內(nèi)容。信息需求定義了數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)應(yīng)該提供的所有信息,應(yīng)注意描述清楚系統(tǒng)中數(shù)據(jù)的數(shù)據(jù)類型。(2)處理需求:需要對(duì)數(shù)據(jù)完成什么處理功能及處理的方式。處理需求定義了系統(tǒng)的數(shù)據(jù)處理的操作,應(yīng)注意操作執(zhí)行的場(chǎng)合、頻率、操作對(duì)數(shù)據(jù)的影響等。(3)安全性和完整性要求:在定義信息需求和處理需求的同時(shí)必須相應(yīng)確定安全性和完整性約束。
2.確定需要的表定義數(shù)據(jù)庫(kù)中的表是數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中技巧性最強(qiáng)的一步。3.確定所需字段確定字段時(shí)需要注意的問(wèn)題如下:(1)每個(gè)字段直接和表的實(shí)體相關(guān)(2)以最小的邏輯單位存儲(chǔ)信息(3)表中的字段必須是原始數(shù)據(jù)(4)確定主關(guān)鍵字字段4.確定聯(lián)系設(shè)計(jì)數(shù)據(jù)庫(kù)的目的實(shí)質(zhì)上是設(shè)計(jì)出滿足實(shí)際應(yīng)用需求的實(shí)際關(guān)系模型。確定聯(lián)系的目的是使表的結(jié)構(gòu)合理,不僅存儲(chǔ)了所需要的實(shí)體信息,并且反映出實(shí)體之間客觀存在的關(guān)聯(lián)。5.設(shè)計(jì)求精數(shù)據(jù)庫(kù)設(shè)計(jì)在每一個(gè)具體階段的后期都要經(jīng)過(guò)用戶確認(rèn)。如果不能滿足應(yīng)用需求,則要返回到前面一個(gè)或前面幾個(gè)階段進(jìn)行修改和調(diào)整。整個(gè)設(shè)計(jì)過(guò)程實(shí)際上是一個(gè)不斷反復(fù)修改、調(diào)整的迭代過(guò)程。1.5.2數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程1.6任務(wù)實(shí)現(xiàn)設(shè)計(jì)大學(xué)生選課管理數(shù)據(jù)庫(kù),分析如下:1.在大學(xué)生選課管理中,顯然得有“學(xué)生”、“教師”和“課程”這三個(gè)對(duì)象實(shí)體,也就說(shuō),得有學(xué)生信息表、教師信息表和課程信息表。2.學(xué)生信息表至少得含有學(xué)號(hào)、姓名、性別、所在系、班級(jí)和電話這幾項(xiàng)信息;教師信息表至少得含有教師編號(hào)、姓名、性別、所在系、學(xué)歷、專業(yè)、職稱和電話這幾項(xiàng)信息;課程信息表至少得含有課程代碼、課程名稱、學(xué)時(shí)數(shù)、學(xué)分和課程收費(fèi)這幾項(xiàng)信息。3.顯然學(xué)生信息表、教師信息表和課程信息表之間有如下聯(lián)系:(1)教師表與課程表之間存在“多對(duì)多”的聯(lián)系,一個(gè)教師能夠同時(shí)講授多門課程,而同一門課程也可由多個(gè)教師來(lái)講授。這樣由前面敘述可知,需要增加一個(gè)能夠聯(lián)系教師表與課程表的“紐帶表”,即“教師教課信息表”,該表至少含有教師號(hào)、課程代碼和講課酬金這幾項(xiàng)信息,指哪個(gè)教師所能夠講授的哪一門課程。(2)學(xué)生表與教師教課表之間存在“多對(duì)多”的聯(lián)系,一個(gè)學(xué)生能夠同時(shí)選修多門(有教師能講的)課程,同一門(有教師能講的)課程也可有多個(gè)學(xué)生同時(shí)選修。這樣還需要增加一個(gè)能夠聯(lián)系學(xué)生表與教師教課表
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026新疆生產(chǎn)建設(shè)兵團(tuán)第一師中級(jí)人民法院司法警務(wù)輔助人員招聘16人備考考試試題附答案解析
- 2026浙江金華市武義經(jīng)濟(jì)開發(fā)區(qū)管理委員會(huì)招聘4人備考考試試題附答案解析
- 2026中國(guó)航空工業(yè)集團(tuán)津電招聘?jìng)淇伎荚囋囶}附答案解析
- 2026中國(guó)人民大學(xué)綜合服務(wù)中心招聘2人備考考試題庫(kù)附答案解析
- 2026年?yáng)|營(yíng)市東營(yíng)區(qū)事業(yè)單位公開招聘工作人員(60人)備考考試試題附答案解析
- 2026山東事業(yè)單位統(tǒng)考濱州市惠民縣招聘43人參考考試試題附答案解析
- 2026北京市順義區(qū)醫(yī)院第一批招聘編外25人備考考試試題附答案解析
- 成都市食品生產(chǎn)許可制度
- 食品生產(chǎn)廠消毒制度
- 煙葉生產(chǎn)網(wǎng)格化管理制度
- 2025年湖北能源集團(tuán)股份有限公司招聘筆試真題
- ARK+Invest+年度旗艦報(bào)告《Big+Ideas+2026》重磅發(fā)布
- 2026山西臨汾市大寧縣招聘第四次全國(guó)農(nóng)業(yè)普查辦公室人員8人備考題庫(kù)及一套完整答案詳解
- 2026年及未來(lái)5年中國(guó)激光干涉儀行業(yè)市場(chǎng)前景預(yù)測(cè)及投資戰(zhàn)略研究報(bào)告
- 禮品卡使用規(guī)范與制度
- 2026年廈門市外事辦公室翻譯崗位遴選專業(yè)能力測(cè)試含答案
- 2025年總經(jīng)理安全生產(chǎn)責(zé)任書
- DB42∕T 2390-2025 城市更新規(guī)劃編制技術(shù)規(guī)程
- 殘疾人職業(yè)技能培訓(xùn)方案
- T-CFIAS 3037-2025 飼料添加劑 蛋白鋅
- 眼鏡銷售培訓(xùn)課程
評(píng)論
0/150
提交評(píng)論