數(shù)據(jù)庫管理與開發(fā)2章數(shù)據(jù)庫設(shè)計與管理.ppt
《數(shù)據(jù)庫管理與開發(fā)2章數(shù)據(jù)庫設(shè)計與管理.ppt》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫管理與開發(fā)2章數(shù)據(jù)庫設(shè)計與管理.ppt(52頁珍藏版)》請在裝配圖網(wǎng)上搜索。
2章數(shù)據(jù)庫設(shè)計與管理,2.1數(shù)據(jù)庫設(shè)計第2.2SQLServer數(shù)據(jù)庫概念2.3系統(tǒng)數(shù)據(jù)庫2.4SQLServer2005數(shù)據(jù)庫的創(chuàng)建2.5SQLServer2005數(shù)據(jù)庫的修改2.6SQLServer2005數(shù)據(jù)庫的刪除2.7使用SQLServerManagementStudio向?qū)浞菖c恢復(fù)數(shù)據(jù)庫,2章數(shù)據(jù)庫設(shè)計與管理,教學(xué)重點:(1)數(shù)據(jù)庫設(shè)計。(2)SQLServer數(shù)據(jù)庫的構(gòu)成。(3)SQLServer2005數(shù)據(jù)庫管理。,2.1數(shù)據(jù)庫設(shè)計,2.1.1數(shù)據(jù)庫設(shè)計概述2.1.2規(guī)范化2.1.3需求分析2.1.4概念結(jié)構(gòu)設(shè)計2.1.5邏輯結(jié)構(gòu)設(shè)計2.1.6物理數(shù)據(jù)庫設(shè)計,2.1.1數(shù)據(jù)庫設(shè)計概述,數(shù)據(jù)庫設(shè)計是指針對一個特定的應(yīng)用環(huán)境,構(gòu)造最良好的關(guān)系數(shù)據(jù)庫系統(tǒng)所接受的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能有效地存儲數(shù)據(jù),滿足不同用戶的信息要求和處理要求。數(shù)據(jù)庫設(shè)計包括數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(數(shù)據(jù)庫模式)、數(shù)據(jù)庫動態(tài)行為設(shè)計(數(shù)據(jù)庫查詢、事物處理和報表生成等)和物理設(shè)計。,2.1.1數(shù)據(jù)庫設(shè)計概述,作為數(shù)據(jù)庫設(shè)計者,應(yīng)該遵循的基本經(jīng)驗和設(shè)計原則有:(1)積極發(fā)動用戶廣泛參與。本質(zhì)上數(shù)據(jù)庫設(shè)計者和用戶的合作的成功與否決定了數(shù)據(jù)庫設(shè)計的質(zhì)量高低,用戶是數(shù)據(jù)庫系統(tǒng)的最終使用者和檢驗者。(2)長遠(yuǎn)的眼光。好的數(shù)據(jù)庫系統(tǒng)要保持一成不變是不可能的。因此設(shè)計的數(shù)據(jù)庫系統(tǒng)不僅要盡量滿足用戶當(dāng)前的需要,也要考慮數(shù)據(jù)庫系統(tǒng)的未來發(fā)展和用戶的遠(yuǎn)景需求,為數(shù)據(jù)庫的升級留有余地。,2.1.1數(shù)據(jù)庫設(shè)計概述,按照規(guī)范設(shè)計的方法,數(shù)據(jù)庫設(shè)計的基本步驟分為以下六個階段:(1)需求分析階段。(2)概念結(jié)構(gòu)設(shè)計階段。(3)邏輯結(jié)構(gòu)設(shè)計階段。(4)數(shù)據(jù)庫物理設(shè)計階段。(5)數(shù)據(jù)庫實施階段。(6)數(shù)據(jù)庫運行和維護(hù)階段。,2.1.1數(shù)據(jù)庫設(shè)計概述,2.1.2規(guī)范化,規(guī)范化是一種用來產(chǎn)生表的集合的技術(shù),這些表具有符合要求的屬性,并能滿足用戶的需求。為了說明規(guī)范化的意義,先來了解幾個基本概念。1.函數(shù)依賴在R(U)中,如果X—>Y,并且對于X的任何一個真子集X’,都有Y不函數(shù)依賴于X’,則稱Y對X完全函數(shù)依賴。如果X—>Y,但是Y不完全函數(shù)依賴于X,則稱Y對X部分函數(shù)依賴。,2.1.2規(guī)范化,2.碼若關(guān)系中的某一屬性組的值可以惟一地標(biāo)識一個元組,則稱該屬性組為候選碼;若候選碼多于一個,則選定其中一個作為主碼。主碼的諸屬性稱為主屬性,不包含在任何碼中的屬性稱為非主屬性或非碼屬性。最簡單的情況,單個屬性是碼,極端的情況是全碼,即整個屬性組是碼。,2.1.2規(guī)范化,3.范式構(gòu)造數(shù)據(jù)庫必須遵循一定的規(guī)則,在關(guān)系數(shù)據(jù)庫中,這種規(guī)則就是范式。關(guān)系數(shù)據(jù)庫中的關(guān)系中每一個分量必須是不可分的數(shù)據(jù)項,即必須是規(guī)范化的,滿足這一最基本要求的叫第一范式,簡稱1NF。,2.1.2規(guī)范化,2.1.3需求分析,需求分析是設(shè)計數(shù)據(jù)庫的起點,任務(wù)是通過詳細(xì)調(diào)查顯示要處理的對象,明確各種需求,然后在此基礎(chǔ)上確定新數(shù)據(jù)庫系統(tǒng)的功能。需求分析調(diào)查的重點是“數(shù)據(jù)”和“處理”,通過調(diào)查、收集與分析,獲取用戶以及系統(tǒng)對數(shù)據(jù)庫的要求,主要有下面三點:(1)信息要求。(2)處理要求。(3)安全性與完整性要求。,2.1.3需求分析,數(shù)據(jù)字典通常包括數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程五個部分。其中數(shù)據(jù)項是數(shù)據(jù)的最小組成單位,數(shù)據(jù)字典通過對數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流、數(shù)據(jù)存儲的邏輯內(nèi)容。,2.1.4概念結(jié)構(gòu)設(shè)計,概念結(jié)構(gòu)設(shè)計是在獲取到用戶的完整需求后,把用戶信息抽象為信息結(jié)構(gòu),即概念模型的過程。概念結(jié)構(gòu)是各種數(shù)據(jù)模型的共同基礎(chǔ),它比數(shù)據(jù)模型更獨立于機器、更抽象,從而更加穩(wěn)定。概念結(jié)構(gòu)的主要特點是:(1)真實充分地反映現(xiàn)實世界。(2)易于理解。(3)易于修改。,2.1.4概念結(jié)構(gòu)設(shè)計,1.E-R模型E-R模型提供了表示實體、屬性和聯(lián)系的方法。(1)實體:客觀存在并可相互區(qū)別的事物,被用戶標(biāo)識為獨立存在的對象集合。(2)屬性:實體所具有的某一特性,屬性代表需要知道的有關(guān)實體的內(nèi)容。(3)關(guān)系:實體之間的具有某種含義的關(guān)聯(lián)。,2.1.4概念結(jié)構(gòu)設(shè)計,在E-R圖中每個關(guān)系顯示為連接關(guān)聯(lián)實體的一個菱形,并用關(guān)系的名字標(biāo)記。,一對一關(guān)系,一對多關(guān)系,2.1.4概念結(jié)構(gòu)設(shè)計,多對多關(guān)系(m:n)。對于實體A集中的每個實體,在實體集B中有n(n不等于0)個實體與之相聯(lián)系;反過來對于B中的每一個實體,實體集A中也有m(m不等于0)個實體與之聯(lián)系,則稱實體集A和B是多對多關(guān)系的,2.1.4概念結(jié)構(gòu)設(shè)計,2.概念結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)是對現(xiàn)實世界的一種抽象。在現(xiàn)實生活中最常用的概念結(jié)構(gòu)設(shè)計策略是自底向上方法,也就是自頂向下地進(jìn)行需求分析,然后自底向上地設(shè)計概念結(jié)構(gòu)。概念結(jié)構(gòu)設(shè)計如圖2-7所示,通常分為三步,第一步是抽象數(shù)據(jù),第二步是設(shè)計局部視圖,也就是設(shè)計分E-R圖,第三步是集成局部視圖,合并局部E-R圖。,2.1.4概念結(jié)構(gòu)設(shè)計,2.1.4概念結(jié)構(gòu)設(shè)計,所謂抽象是對實際的人、物、事和動作進(jìn)行人為處理,抽取所關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并把這些用各種概念精確地加以描述,這些概念組成了某種模型。一般有下面三種抽象方法:(1)分類;(2)聚集;(3)概括。,2.1.4概念結(jié)構(gòu)設(shè)計,設(shè)計分E-R圖概念結(jié)構(gòu)設(shè)計首先是根據(jù)某個系統(tǒng)的具體情況,在復(fù)雜的數(shù)據(jù)流圖中選擇一個適當(dāng)層次的數(shù)據(jù)流圖,作為設(shè)計分E-R圖的出發(fā)點,然后利用上面介紹的抽象方法把用戶需求的數(shù)據(jù)進(jìn)行分類、組織(聚集),形成實體、實體的屬性,標(biāo)識實體,確定實體之間的聯(lián)系類型。,2.1.4概念結(jié)構(gòu)設(shè)計,設(shè)計分E-R圖。概念結(jié)構(gòu)設(shè)計首先是根據(jù)某個系統(tǒng)的具體情況,在復(fù)雜的數(shù)據(jù)流圖中選擇一個適當(dāng)層次的數(shù)據(jù)流圖,作為設(shè)計分E-R圖的出發(fā)點,然后利用上面介紹的抽象方法把用戶需求的數(shù)據(jù)進(jìn)行分類、組織(聚集),形成實體、實體的屬性,標(biāo)識實體,確定實體之間的聯(lián)系類型。,2.1.4概念結(jié)構(gòu)設(shè)計,合并局部E-R圖。各子系統(tǒng)的分E-R圖設(shè)計好以后,下一步就是要將所有的分E-R圖合并成一個系統(tǒng)的總的E-R圖。合并分E-R圖時可以一次兩個或者多個分E-R圖。但不管怎樣,在合并分E-R圖時都應(yīng)該分兩步走:第一是合并,解決各分E-R圖之間的沖突;第二是修改和重構(gòu),消除不必要的冗余,生成基本E-R圖。,2.1.4概念結(jié)構(gòu)設(shè)計,各分E-R圖之間的沖突主要有三種:屬性沖突、命名沖突和結(jié)構(gòu)沖突。(1)屬性沖突。(2)命名沖突。(3)結(jié)構(gòu)沖突。,2.1.5邏輯結(jié)構(gòu)設(shè)計,邏輯結(jié)構(gòu)設(shè)計的任務(wù)就是把概念結(jié)構(gòu)設(shè)計階段設(shè)計好的基本E-R圖轉(zhuǎn)換為與選用數(shù)據(jù)庫管理系統(tǒng)(DBMS)所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。設(shè)計邏輯結(jié)構(gòu)一般分兩步進(jìn)行:(1)將概念模型結(jié)構(gòu)轉(zhuǎn)換為一般的關(guān)系、網(wǎng)狀、層次模型。(2)對數(shù)據(jù)模型進(jìn)行優(yōu)化。,2.1.5邏輯結(jié)構(gòu)設(shè)計,1.E-R圖向關(guān)系模型的轉(zhuǎn)換E-R圖向關(guān)系模型的轉(zhuǎn)換有下面一些原則:(1)一個實體型可轉(zhuǎn)換為一個關(guān)系模式,實體的屬性就是關(guān)系的屬性。(2)實體間的聯(lián)系有不同的情況。(3)三個或三個以上實體間的一個多元關(guān)系可轉(zhuǎn)換為一個關(guān)系模式。,2.1.5邏輯結(jié)構(gòu)設(shè)計,2.數(shù)據(jù)模型的優(yōu)化(1)確定數(shù)據(jù)的依賴。(2)對于各關(guān)系模式之間的數(shù)據(jù)依賴進(jìn)行極小化處理,消除冗余的聯(lián)系。4)按照需求分析階段得到的處理要求,分析這些模式對于特定的應(yīng)用環(huán)境是否合適,確定是否要對某些模式進(jìn)行合并或分解。(5)對關(guān)系模式進(jìn)行必要的分解,提高數(shù)據(jù)操作的效率和存儲空間的利用率。,2.1.6物理數(shù)據(jù)庫設(shè)計,數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存取方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于給定的計算機系統(tǒng)。SQLServer2005已有了固定的存儲結(jié)構(gòu),因此,不需要考慮太多數(shù)據(jù)物理存儲的細(xì)節(jié)。對于關(guān)系數(shù)據(jù)庫的物理設(shè)計的內(nèi)容主要包括:(1)為關(guān)系模式選擇存取方法。(2)設(shè)計關(guān)系、索引等數(shù)據(jù)庫文件的物理存儲結(jié)構(gòu)。,2.1.6物理數(shù)據(jù)庫設(shè)計,1.關(guān)系模式存取方法選擇數(shù)據(jù)庫管理系統(tǒng)一般提供多種存取方法。通常有三種,第一種是索引方法,目前主要是B+樹索引方法;第二種是聚簇方法;第三種是HASH方法。,2.1.6物理數(shù)據(jù)庫設(shè)計,2.確定數(shù)據(jù)庫的存儲結(jié)構(gòu)確定數(shù)據(jù)庫物理結(jié)構(gòu)主要是指確定數(shù)據(jù)的存放位置和存儲結(jié)構(gòu),包括確定關(guān)系、索引、聚簇、日志、備份等的存儲安排和存儲結(jié)構(gòu),確定系統(tǒng)配置。,2.2SQLServer數(shù)據(jù)庫概念,2.2.1數(shù)據(jù)庫對象2.2.2數(shù)據(jù)庫文件2.2.3數(shù)據(jù)庫文件組,2.2.1數(shù)據(jù)庫對象,數(shù)據(jù)庫對象是數(shù)據(jù)庫的組成部分,常見的有以下幾種:(1)表(Table)。(2)視圖(View)。(3)索引(Index)。(4)圖表(Diagram)。(5)缺省值(Default)。(6)規(guī)則(Rule)。(7)觸發(fā)器(Trigger)。(8)用戶(User)。,2.2.2數(shù)據(jù)庫文件,SQLServer2005數(shù)據(jù)庫具有三種類型的文件:(1)主數(shù)據(jù)文件。主數(shù)據(jù)文件是數(shù)據(jù)庫的起點,指向數(shù)據(jù)庫中的其他文件。(2)次要數(shù)據(jù)文件。除了主數(shù)據(jù)文件以外的所有其他數(shù)據(jù)文件都是次要數(shù)據(jù)文件或者稱為輔助文件。(3)日志文件。日志文件包含著用于恢復(fù)數(shù)據(jù)庫的所有日志信息。,2.2.2數(shù)據(jù)庫文件,大多數(shù)情況下,數(shù)據(jù)庫引擎使用master數(shù)據(jù)庫中的文件位置信息。文件有兩個名稱:(1)logical_file_name。logical_file_name是在所有T-SQL語句中引用物理文件時所使用的名稱。(2)os_file_name。os_file_name是包括目錄路徑的物理文件名,它必須符合操作系統(tǒng)文件命名規(guī)則。,2.2.3數(shù)據(jù)庫文件組,為便于分配和管理,可以將數(shù)據(jù)庫對象和文件一起分成文件組。1.主文件組主文件組包含主數(shù)據(jù)文件和任何沒有明確分配給其他文件組的其他文件。、2.用戶定義文件組用戶定義文件組是通過在CREATEDATABASE或ALTERDATABASE語句中使用FILEGROUP關(guān)鍵字指定的任何文件組。,2.2.3數(shù)據(jù)庫文件組,2.3系統(tǒng)數(shù)據(jù)庫,SQLServer2005包含下列數(shù)據(jù)庫:1.master數(shù)據(jù)庫。master數(shù)據(jù)庫是SQLServer中所有系統(tǒng)級信息的倉庫,記錄SQLServer系統(tǒng)的所有系統(tǒng)級信息。2.msdb數(shù)據(jù)庫。msdb數(shù)據(jù)庫由SQLServer代理用來計劃警報和作業(yè),關(guān)于備份操作的信息也存放在msdb數(shù)據(jù)庫中。,2.3系統(tǒng)數(shù)據(jù)庫,3.model數(shù)據(jù)庫。model數(shù)據(jù)庫是個???,用于SQLServer實例上創(chuàng)建的所有數(shù)據(jù)庫的模板。4.tempdb數(shù)據(jù)庫。tempdb數(shù)據(jù)庫是連接到SQLServer實例的所有用戶都可用的全局資源,它保存所有臨時表和臨時存儲過程,所有版本的更新記錄和SQLServerDatabaseEngine創(chuàng)建的內(nèi)部工作表。,2.4SQLServer2005數(shù)據(jù)庫的創(chuàng)建,2.4.1使用SQLServerManagementStudio創(chuàng)建數(shù)據(jù)庫2.4.2使用T-SQL創(chuàng)建數(shù)據(jù)庫,2.4.1使用SQLServerManagementStudio創(chuàng)建數(shù)據(jù)庫,啟動SQLServerManagementStudio窗口,右擊“數(shù)據(jù)庫”,選擇“新建數(shù)據(jù)庫”,則進(jìn)入新建數(shù)據(jù)庫的腳面。,2.4.1使用SQLServerManagementStudio創(chuàng)建數(shù)據(jù)庫,“文件組”選項卡內(nèi)可以設(shè)置數(shù)據(jù)庫文件所屬的文件組,單擊“添加”按鈕可以增加自定義名字的文件組。,2.4.2使用T-SQL創(chuàng)建數(shù)據(jù)庫,使用SQLServerManagementStudio創(chuàng)建數(shù)據(jù)庫時,SQLServer在幕后生成T-SQL語句。如果要用T-SQL則可以用CREATEDATABASE語句生成數(shù)據(jù)庫。使用T-SQL創(chuàng)建數(shù)據(jù)庫的步驟如下:(1)在SQLServer程序組中打開SQLServerManagementStudio查詢窗口。(2)在SQLServerManagementStudio查詢窗口中,輸入CREATEDATABASE(創(chuàng)建數(shù)據(jù)庫)命令。,2.5SQLServer2005數(shù)據(jù)庫的修改,2.5.1使用SQLServerManagementStudio向?qū)薷臄?shù)據(jù)庫2.5.2使用T-SQL修改數(shù)據(jù)庫,2.5.1使用SQLServerManagementStudio向?qū)薷臄?shù)據(jù)庫,啟動SQLServerManagementStudio,選擇服務(wù)器,右擊要修改的數(shù)據(jù)庫,選擇“屬性”命令,彈出屬性窗口。,2.5.2使用T-SQL修改數(shù)據(jù)庫,通過SQLServerManagementStudio查詢窗口執(zhí)行ALTERDATABASE語句,也可以對一個數(shù)據(jù)庫進(jìn)行添加、刪除文件或文件組操作,也可以修改文件或文件屬性。,2.6SQLServer2005數(shù)據(jù)庫的刪除,2.6.1使用SQLServerManagementStudio刪除數(shù)據(jù)庫2.6.2使用T-SQL語句刪除數(shù)據(jù)庫,2.6.1使用SQLServerManagementStudio刪除數(shù)據(jù)庫,啟動SQLServerManagementStudio,選擇服務(wù)器,右擊要刪除的數(shù)據(jù)庫,選擇“刪除”命令,彈出刪除對象窗口。,2.6.2使用T-SQL語句刪除數(shù)據(jù)庫,在SQLServerManagementStudio查詢窗口中可以用DROPDATABASE語句實現(xiàn)刪除數(shù)據(jù)庫,刪除時不會出現(xiàn)任何提示框,而且數(shù)據(jù)庫一經(jīng)刪除就不能再恢復(fù),所以用這個語句要特別小心,輕易不要使用。DROPDATABASE語法格式如下:DROPDATABASEdatabase_name[,….n]其中參數(shù)database_name為要刪除數(shù)據(jù)庫的名稱。,2.7使用SQLServerManagementStudio向?qū)浞菖c恢復(fù)數(shù)據(jù)庫,2.7.1使用SQLServerManagementStudio向?qū)浞輸?shù)據(jù)庫2.7.2使用SQLServerManagementStudio向?qū)Щ謴?fù)數(shù)據(jù)庫,2.7.1使用SQLServerManagementStudio向?qū)浞輸?shù)據(jù)庫,啟動SQLServerManagementStudio,選擇服務(wù)器,右擊要備份的數(shù)據(jù)庫,選擇“任務(wù)”/“備份”命令,彈出備份數(shù)據(jù)窗口。,2.7.2使用SQLServerManagementStudio向?qū)Щ謴?fù)數(shù)據(jù)庫,啟動SQLServerManagementStudio,選擇服務(wù)器,右擊要備份的數(shù)據(jù)庫,選擇“任務(wù)”/“還原”“數(shù)據(jù)庫”命令,彈出還原數(shù)據(jù)窗口。,小結(jié),對于數(shù)據(jù)庫的管理雖然是比較簡單的,但也不能忽視。數(shù)據(jù)庫的設(shè)計和管理是使用SQLServer2005的第一步,與數(shù)據(jù)庫性能好壞有直接聯(lián)系。通過本章的學(xué)習(xí),希望用戶能熟練地掌握數(shù)據(jù)庫的基本操作。,- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)庫 管理 開發(fā) 設(shè)計
鏈接地址:http://m.zhongcaozhi.com.cn/p-12176763.html