數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第1頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第2頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第3頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第4頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、.wd.wd.wd.數(shù) 據(jù) 庫(kù) 課 程 設(shè) 計(jì)教學(xué)管理系統(tǒng) 評(píng)價(jià)標(biāo)準(zhǔn)分?jǐn)?shù)比例%成績(jī)論文論文構(gòu)造包含:相關(guān)技術(shù)介紹、需求分析、概念構(gòu)造設(shè)計(jì)、邏輯構(gòu)造設(shè)計(jì)、數(shù)據(jù)庫(kù)物理設(shè)計(jì)、數(shù)據(jù)庫(kù)實(shí)施、系統(tǒng)測(cè)試方案和測(cè)試報(bào)告、系統(tǒng)的主要功能和使用說明、系統(tǒng)安裝說明。要求論文完整、內(nèi)容詳細(xì),格式標(biāo)準(zhǔn)。40程序系統(tǒng)運(yùn)行正確;功能完善:有增、刪、改、查功能,有 基本的報(bào)表、查詢、統(tǒng)計(jì)和輸入、輸出功能;工作量充分;系統(tǒng)實(shí)現(xiàn)技術(shù)的難度。30數(shù)據(jù)庫(kù)設(shè)計(jì)E-R圖設(shè)計(jì)正確;數(shù)據(jù)庫(kù)邏輯構(gòu)造設(shè)計(jì)標(biāo)準(zhǔn)化;數(shù)據(jù)庫(kù)物理設(shè)計(jì)合理。30總評(píng)成績(jī) 優(yōu) 良 中 及格 不及格總分前言.4 前言.4 相關(guān)技術(shù)介紹. 4第一章 需求分析. 4 1.1 任

2、務(wù)概述. 5 1.1.1 目標(biāo). 5 1.1.2 運(yùn)行環(huán)境. 5 1.2 數(shù)據(jù)流圖. 5 1.3 數(shù)據(jù)字典. 6 1.4 系統(tǒng)流程分析. 6第二章 概念構(gòu)造設(shè)計(jì). 7第三章 邏輯構(gòu)造設(shè)計(jì). 8 3.1 邏輯構(gòu)造設(shè)計(jì). 8 3.2 標(biāo)準(zhǔn)化處理. 10第四章 數(shù)據(jù)庫(kù)物理設(shè)計(jì). 11 4.1 索引表. 10 4.2 系統(tǒng)配置. 11 4.3 視圖. 11第五章 數(shù)據(jù)庫(kù)的實(shí)施. 11 5.1 創(chuàng)立數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象. 11 5.2 完整性約束創(chuàng)立.13 5.3 數(shù)據(jù)庫(kù)的維護(hù)及備份. 14 5.3.1 維護(hù). 14 5.3.2 檢測(cè)并改善數(shù)據(jù)庫(kù)性能. 14 5.3.3 備份. 14前臺(tái)用戶界面. 14第

3、七章 結(jié)論與體會(huì). 17參考文獻(xiàn)0、前言 0.1引言 數(shù)據(jù)庫(kù)作為存取數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)展操作的工具在系統(tǒng)中所起到的作用至關(guān)重要。數(shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造優(yōu)化的數(shù)據(jù)庫(kù)邏輯模式和物理模式結(jié)果,并據(jù)此建設(shè)數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),使之能有效地存儲(chǔ)和管理數(shù)據(jù),滿足應(yīng)用需求,包括信息管理要求和數(shù)據(jù)操作。信息管理要求是指在數(shù)據(jù)庫(kù)中應(yīng)該存儲(chǔ)和管理哪些數(shù)據(jù)對(duì)象;數(shù)據(jù)操作要求是指對(duì)數(shù)據(jù)對(duì)象進(jìn)展哪些操作,如查詢、增、刪、改、統(tǒng)計(jì)等操作。數(shù)據(jù)庫(kù)設(shè)計(jì)地目標(biāo)是維用戶和各種應(yīng)用系統(tǒng)提供的一個(gè)信息根基設(shè)施和高效率地運(yùn)行環(huán)境。高效率的運(yùn)行環(huán)境包括:數(shù)據(jù)庫(kù)數(shù)據(jù)的存取速率、數(shù)據(jù)庫(kù)存儲(chǔ)空間的利用率、數(shù)據(jù)庫(kù)系統(tǒng)運(yùn)行管理的效率

4、等都是高的。為了使數(shù)據(jù)庫(kù)的應(yīng)用系統(tǒng)開發(fā)設(shè)計(jì)合理、標(biāo)準(zhǔn)、有序、正確、高效進(jìn)展,現(xiàn)在廣泛采用的是工程化6階段開發(fā)設(shè)計(jì)過程與方法,它們是需求分析階段、概念構(gòu)造設(shè)計(jì)階段、邏輯構(gòu)造設(shè)計(jì)階段、物理構(gòu)造設(shè)計(jì)階段、數(shù)據(jù)庫(kù)實(shí)施、數(shù)據(jù)庫(kù)系統(tǒng)運(yùn)行與維護(hù)階段。我按照以上幾點(diǎn)開發(fā)了學(xué)生選課管理系統(tǒng)數(shù)據(jù)庫(kù)。0.2相關(guān)技術(shù)介紹0.2.1MYSQL概述MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQL AB 公司開發(fā),目前屬于 Oracle 旗下產(chǎn)品。MySQL 最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在 WEB 應(yīng)用方面MySQL是最好的 RDBMS (Relational Database Management System,

5、關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)) 應(yīng)用軟件之一。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。MySQL所使用的 SQL 語言是用于訪問數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語言。MySQL 軟件采用了雙授權(quán)政策,它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),一般中小型網(wǎng)站的開發(fā)都選擇 MySQL 作為網(wǎng)站數(shù)據(jù)庫(kù)。0.2.2Visual Studio概述Microsoft Visual Studio簡(jiǎn)稱VS是美國(guó)微軟公司的開發(fā)工具包系列產(chǎn)品。VS是一個(gè) 基本完整的開發(fā)工具集,它包括了整個(gè)軟件生命周

6、期中所需要的大局部工具,如UML工具、代碼管控工具、集成開發(fā)環(huán)境(IDE)等等。所寫的目標(biāo)代碼適用于微軟支持的所有平臺(tái),包括Microsoft Windows、Windows Mobile、Windows CE、.NET Framework、.NET Compact Framework和Microsoft Silverlight 及Windows Phone。需求分析 1.1任務(wù)概述 1.1.1目標(biāo)建設(shè)一個(gè)教學(xué)管理系統(tǒng),系統(tǒng)通過數(shù)據(jù)庫(kù)存儲(chǔ)學(xué)校學(xué)生、教職工、系、課程以及成績(jī)等資料,系統(tǒng)管理員可通過用戶名與密碼進(jìn)入數(shù)據(jù)庫(kù),并根據(jù)給予的權(quán)限對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)展查詢或修改。刪除的數(shù)據(jù)要留底。對(duì)數(shù)據(jù)庫(kù)進(jìn)展

7、操作級(jí)審計(jì)。 1.1.2運(yùn)行環(huán)境 (1)、硬件配置 安裝本軟件之前,需要確保計(jì)算機(jī)具有如下配置,這也是最低硬件要求: 使用1G內(nèi)存 不小于40MB的可用硬盤空間 2、軟件配置 安裝本軟件之前,需要確保計(jì)算機(jī)已安裝:MicorsoftWindows XP及以上的操作系統(tǒng) .NET Framework 3.5以上 1.2數(shù)據(jù)流圖管理員教學(xué)管理系統(tǒng)數(shù)據(jù)庫(kù)顯示器操作 數(shù)據(jù)信息 數(shù)據(jù)信息 圖1 頂級(jí)數(shù)據(jù)流圖登錄信息驗(yàn)證管理員信息表管理員用戶名密碼 登錄信息管理員信息學(xué)生信息表驗(yàn)證通過信息增刪改查學(xué)生信息管理員操作增刪改查審計(jì)數(shù)據(jù)庫(kù)教職工信息表 操作 教職工信息展示系統(tǒng)課程信息表課程信息刪除的信息歷史表成

8、績(jī)信息表顯示器 成績(jī)信息系信息表系信息 圖2、一級(jí)數(shù)據(jù)流圖1.3 數(shù)據(jù)字典數(shù)據(jù)元素?cái)?shù)據(jù)類型數(shù)據(jù)長(zhǎng)度數(shù)據(jù)組成數(shù)據(jù)來源描述學(xué)號(hào)Varchar 1010數(shù)字10學(xué)生信息表成績(jī)表唯一標(biāo)示學(xué)生的號(hào)碼職工號(hào)Varchar 88數(shù)字8職工信息表唯一標(biāo)示教工姓名Varchar 101漢字10學(xué)生信息表職工信息表人員姓名性別Varchar 1男|女學(xué)生信息表職工信息表人員性別所在系號(hào)Int33數(shù)字3學(xué)生信息表職工信息表系號(hào)Int33數(shù)字3系信息表唯一標(biāo)示一個(gè)系的編號(hào)系名稱Varchar 201漢字20系信息表課程號(hào)Int44數(shù)字4課程信息表成績(jī)表唯一標(biāo)示一個(gè)課程的編號(hào)課程名稱Varchar 201漢字20課程信

9、息表任課教師Varchar 88數(shù)字8課程信息表這節(jié)課的負(fù)責(zé)教師考試成績(jī)Int31數(shù)字3成績(jī)表1.4系統(tǒng)流程分析驗(yàn)證失敗反響信息查詢 退出系統(tǒng)信息增刪改登錄界面師生信息管理課程信息管理 成績(jī)管理用戶驗(yàn)證 信息查詢成功前面的分析中我們確定了系統(tǒng)各個(gè)功能模塊,屬于靜態(tài)建模的范圍。在系統(tǒng)運(yùn)行時(shí)刻的動(dòng)態(tài)模型應(yīng)該由系統(tǒng)流程決定。從上面的功能描述中,我們可以把各個(gè)系統(tǒng)分為5個(gè)模塊:用戶驗(yàn)證,師生信息管理,課程信息管理,成績(jī)管理和信息查詢。在每個(gè)模塊下又提供更為具體的功能。詳細(xì)的系統(tǒng)模塊關(guān)系圖如圖3所示。圖3、程序流程圖通過對(duì)整個(gè)管理系統(tǒng)的功能分析,可以定義出系統(tǒng)的功能模塊圖,從中再細(xì)分各模塊,可以得到系統(tǒng)

10、概要模塊如下:學(xué)生信息管理教工信息管理師生信息管理選課管理課程信息管理成績(jī)管理信息查詢教學(xué)管理系統(tǒng)身份驗(yàn)證綜合查詢統(tǒng)計(jì)報(bào)表系信息管理圖4、功能模塊圖2 數(shù)據(jù)庫(kù)概念構(gòu)造設(shè)計(jì)MN成績(jī)學(xué)生選課課程系教工屬于屬于教授NNN11采用E-R圖的分析方法,首先對(duì)局部視圖進(jìn)展分析設(shè)計(jì),然后再實(shí)現(xiàn)視圖集成。在視圖集成時(shí),注意要盡量消除沖突和冗余。在這里直接給出視圖集成后的E-R圖,如圖5所示。E-R圖如下M權(quán)限密碼管理員用戶名 圖5、實(shí)體E-R圖3 數(shù)據(jù)庫(kù)邏輯構(gòu)造設(shè)計(jì)根據(jù)E-R圖,我們可以創(chuàng)立以下數(shù)據(jù)表。系統(tǒng)管理員表系統(tǒng)管理員admin存儲(chǔ)了登錄本系統(tǒng)的用戶的登錄ID和密碼,權(quán)限以及鹽值表1、系統(tǒng)管理員表字段名

11、稱數(shù)據(jù)類型可否為空約束條件說 明ADMIN_USERVarchar(50)NOT NULL主鍵管理員IDADMIN_PSWDVarchar (256)NOT NULL無管理員密碼哈希值A(chǔ)DMIN_PERMITVarchar(1)NOT NULL無管理員權(quán)限SaltVarchar(10)NOT NULL無管理員密碼鹽值 學(xué)生信息表 學(xué)生信息表student存放了學(xué)校的所有學(xué)生的 基本信息,所有有關(guān)學(xué)生的操作都與這個(gè)表有關(guān)。通過時(shí)間戳自動(dòng)生成入學(xué)時(shí)間。信息從表中刪除時(shí)參加歷史表留底。表2、學(xué)生信息表字段名稱數(shù)據(jù)類型可否為空約束條件說 明SnoVarchar(50)NOT NULL主鍵學(xué)生學(xué)號(hào)Sna

12、meVarchar (50)NOT NULL無學(xué)生姓名SsexVarchar (1)NOT NULL無學(xué)生性別S_DnoVarchar(50)NOT NULL外鍵學(xué)生所在系號(hào)SindateDatetimeNOT NULL時(shí)間戳形成學(xué)生入學(xué)時(shí)間 教師信息表 教師信息表teacher存放了學(xué)校的所有教師的 基本信息,所有有關(guān)教師的操作都與這個(gè)表有關(guān)。通過時(shí)間戳自動(dòng)生成入職時(shí)間。信息從表中刪除時(shí)參加歷史表留底。 表3、教師信息表字段名稱數(shù)據(jù)類型可否為空約束條件說 明TnoVarchar (50)NOT NULL主鍵教師工號(hào)TnameVarchar (50)NOT NULL無教師姓名TsexVarch

13、ar (1)NOT NULL無教師性別T_DnoVarchar(50)NOT NULL外鍵教師所在系號(hào)TindateDatetimeNOT NULL時(shí)間戳形成教師入職時(shí)間 系信息表 系信息表department存放了學(xué)校的所有系的 基本信息,并且與學(xué)生表以及教師表有嚴(yán)密聯(lián)系表4、系信息表字段名稱數(shù)據(jù)類型可否為空約束條件說 明DnoVarchar (50)NOT NULL主鍵系號(hào)DnameVarchar (50)NOT NULL無系名稱DsummaryTextNULL無系簡(jiǎn)介課程信息表 課程信息表course記錄了學(xué)校中所有課程的信息。表5、課程信息表字段名稱數(shù)據(jù)類型可否為空約束條件說 明Cno

14、Varchar (50)NOT NULL主鍵課程號(hào)CnameVarchar (50)NOT NULL無課程名稱C_TnoVarchar (50)NOT NULL外鍵任課教師工號(hào) 成績(jī)信息表 成績(jī)表sc記錄了某個(gè)學(xué)生在某們課程得到的成績(jī)。表6、成績(jī)表字段名稱數(shù)據(jù)類型可否為空約束條件說 明SnoVarchar (50)NOT NULL主鍵、外鍵學(xué)生學(xué)號(hào)CnoVarchar (50)NOT NULL主鍵、外鍵課程名稱GradeIntNULL無當(dāng)科成績(jī) 歷史表 歷史表history記錄了離校學(xué)生或離職教師的信息,通過觸發(fā)器自動(dòng)生成,盡量防止手動(dòng)添加。作為留底超過一定數(shù)量應(yīng)給予整理。 表7、歷史表字段名

15、稱數(shù)據(jù)類型可否為空約束條件說 明HnoVarchar (50)NOT NULL主鍵曾用標(biāo)示號(hào)hnameVarchar (50)NOT NULL無姓名hSexVarchar (1)NOT NULL無性別hdepartmentVarchar (50)NOT NULL無曾在系名hindateDatetimeNOT NULL無入學(xué)日期houtdateDatetimeNOT NULL時(shí)間戳形成離校日期 審計(jì)表 審計(jì)表Accesslog記錄了除管理員外的數(shù)據(jù)庫(kù)用戶對(duì)數(shù)據(jù)庫(kù)的使用情況,處于安全性考慮,用獨(dú)立的數(shù)據(jù)庫(kù)進(jìn)展保存,并且只賦予管理員權(quán)限進(jìn)展查看。只可通過系統(tǒng)進(jìn)展數(shù)據(jù)添加,嚴(yán)禁手工操作數(shù)據(jù)!表8、審計(jì)

16、表字段名稱數(shù)據(jù)類型可否為空約束條件說 明IdVarchar (50)NOT NULL主鍵、自增標(biāo)示號(hào)timetimestampNOT NULL時(shí)間戳形成操作時(shí)間loaclnameVarchar (50)NOT NULL無操作帳號(hào)matchnameVarchar (50)NOT NULL無對(duì)應(yīng)用戶3.2標(biāo)準(zhǔn)化處理經(jīng)過對(duì)初始關(guān)系模式的標(biāo)準(zhǔn)化處理以下關(guān)系模式中不存在局部函數(shù)依賴和傳遞函數(shù)依賴,已經(jīng)到達(dá)3NF。加粗代表主碼,斜體外碼Admin(ADMIN_USER,ADMIN_PSWD,ADMIN_PERMIT)Student(Sno,Sname,Ssex,S_Dno,Sindate)Teacher(

17、Tno,Tname,Tsex,T_Dno,Tindate)Department(Dno,Dname,Dsummary)Course(Cno,Cname,C_Tno)SC(Sno,Cno,Grade)4物理構(gòu)造設(shè)計(jì)數(shù)據(jù)庫(kù)在物理上的存儲(chǔ)構(gòu)造與存儲(chǔ)方法稱為數(shù)據(jù)庫(kù)的物理構(gòu)造,它依賴于選定的數(shù)據(jù)庫(kù)管理系統(tǒng)。為一個(gè)給定的邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用要求的物理構(gòu)造的過程,就是物理構(gòu)造設(shè)計(jì)。數(shù)據(jù)庫(kù)的物理構(gòu)造設(shè)計(jì)通常分為兩步:1確定數(shù)據(jù)庫(kù)的物理構(gòu)造,在關(guān)系數(shù)據(jù)庫(kù)中主要指存取方法和存儲(chǔ)構(gòu)造;2對(duì)物理構(gòu)造進(jìn)展評(píng)價(jià),評(píng)價(jià)的中的是時(shí)間和空間效率。4.1 創(chuàng)立數(shù)據(jù)庫(kù)及建設(shè)索引以及完整性約束使用工具Navicat for

18、 SQL ,創(chuàng)立了school數(shù)據(jù)庫(kù)及Accesslog數(shù)據(jù)庫(kù)并生成相關(guān)數(shù)據(jù)庫(kù)模型,圖如下建設(shè)各數(shù)據(jù)庫(kù)間的索引關(guān)系。4.2系統(tǒng)配置在mysql配置文件my.ini中的mysqld設(shè)置項(xiàng)中寫入如下配置:init-connect=insert into accesslog.accesslog values(connection_id(),now(),user(),current_user(); 當(dāng)非超級(jí)管理員連接數(shù)據(jù)庫(kù)時(shí)自動(dòng)向?qū)徲?jì)表中寫入審計(jì)記錄。創(chuàng)立受限用戶a,只允許其對(duì)school數(shù)據(jù)庫(kù)中student,teacher,course,sc,department表進(jìn)展增刪改查操作,拒絕其他權(quán)限。

19、4.3 視圖用SQL管理工具建設(shè)常用的一個(gè)視圖,即學(xué)生_成績(jī)視圖。菜單欄中單擊工具 向?qū)?數(shù)據(jù)庫(kù) 創(chuàng)立視圖向?qū)?,選擇你所要建的試圖的對(duì)象,選擇列名,按照提示,最后單擊完成即可。使用SQL語句建設(shè)視圖的命令如下:createviewstudent_scasselectsno,sname,o,cname,gradefromstudentjoinsconstudent.sno=o=o5 數(shù)據(jù)庫(kù)實(shí)施5.1創(chuàng)立數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象*CREATE DATABASE school;USE school;CREATE TABLE Admin(ADMIN_USER VARCHAR(50) NOT NULL,ADM

20、IN_PSWD VARCHAR(50) NOT NULL,ADMIN_PERMIT VARCHAR(50) NOT NULL,Salt VARCHAR(10) NOT NULL,PRIMARY KEY (ADMIN_USER);CREATE TABLE Student(Sno VARCHAR(50) NOT NULL,Sname VARCHAR(50) NOT NULL,Ssex VARCHAR (1) NOT NULL,S_Dno VARCHAR(50) NOT NULL,Sindate DATETIME NOT NULL,PRIMARY KEY (Sno);CREATE TABLE Tea

21、cher(Tno VARCHAR (50) NOT NULL,Tname VARCHAR(50) NOT NULL,Tsex VARCHAR (1) NOT NULL,T_Dno VARCHAR(50) NOT NULL,Tindate DATETIME NOT NULL,PRIMARY KEY (Tno);CREATE TABLE Department(Dno VARCHAR(50) NOT NULL,Dname VARCHAR(50) NOT NULL,Dsummary TEXT,PRIMARY KEY (Dno);CREATE TABLE Course(Cno VARCHAR(50) N

22、OT NULL,Cname VARCHAR(50) NOT NULL,C_Tno VARCHAR(50) NOT NULL,PRIMARY KEY (Cno);CREATE TABLE SC(Sno VARCHAR(50) NOT NULL,Cno VARCHAR(50) NOT NULL,Grade INT,PRIMARY KEY (Sno,Cno);CREATE TABLE HISTORY(HNO VARCHAR(50) NOT NULL,HNAME VARCHAR(50) NOT NULL,HSEX VARCHAR(50) NOT NULL,HDEPARTMENT VARCHAR(50)

23、 NOT NULL,HINDATE DATETIME NOT NULL,HOUTDATE DATETIME NOT NULL,PRIMARY KEY (HNO);CREATE DATABASE Accesslog;Use Accesslong;CREATE TABLE Accesslong (ID INT,TIME TIMESTAMP,LOCALNAME VARCHAR(50),MATCHNAME VARCHAR(50),PRIMARY KEY (ID);*5.2完整性約束*use school;alter table student add constraint FK_ID0 foreign

24、 key(S_Dno) REFERENCES department(Dno);alter table teacher add constraint FK_ID1 foreign key(T_Dno) REFERENCES department(Dno);alter table course add constraint FK_ID2 foreign key(C_Tno) REFERENCES teacher(Tno);alter table sc add constraint FK_ID3 foreign key(Sno) REFERENCES student(Sno);alter table

25、 sc add constraint FK_ID4 foreign key(Cno) REFERENCES course(Cno);*CREATE DEFINER=rootlocalhost TRIGGER indate BEFORE INSERT ON studentFOR EACH ROW set new.sindate = current_date;CREATE DEFINER=rootlocalhost TRIGGER olddata BEFORE DELETE ON studentFOR EACH ROW begininsert into history(hno,hname,hsex

26、,hindate,houtdate) values (old.sno,old.sname,old.ssex,old.sindate,current_date);update history h,department p set h.hdepartment= p.dname where p.dno = old.s_dno;end;*5.3數(shù)據(jù)庫(kù)的維護(hù)在數(shù)據(jù)庫(kù)運(yùn)行階段,對(duì)數(shù)據(jù)庫(kù)經(jīng)常性的維護(hù)工作主要是有DBA完成,它包括:1.數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)和恢復(fù)2.數(shù)據(jù)庫(kù)的安全性和完整性控制3.數(shù)據(jù)庫(kù)性能的監(jiān)視、分析和改造4.數(shù)據(jù)庫(kù)的重組織與重構(gòu)造5.3.1 維護(hù) 數(shù)據(jù)庫(kù)既是共享的資源,又要進(jìn)展適當(dāng)?shù)谋C?。DBA必須

27、對(duì)數(shù)據(jù)庫(kù)安全性和完整性控制負(fù)起責(zé)任。尤其在計(jì)算機(jī)網(wǎng)絡(luò)普遍引應(yīng)用的今天,保證數(shù)據(jù)安全、防止黑客攻擊、防止病毒入侵等,都是DBA所需要面對(duì)的。按照設(shè)計(jì)階段提供的安全防范和故障恢復(fù)標(biāo)準(zhǔn),DBA要經(jīng)常檢查系統(tǒng)的安全是否受到侵犯,根據(jù)用戶的實(shí)際需要授予用戶不同的操作權(quán)限。數(shù)據(jù)庫(kù)在運(yùn)行過程中,由于應(yīng)用環(huán)境發(fā)生變化,對(duì)安全性的要求可能發(fā)生變化,DBA要根據(jù)實(shí)際情況及時(shí)調(diào)整相應(yīng)的授權(quán)和密碼,以保證數(shù)據(jù)庫(kù)的安全性。同樣數(shù)據(jù)庫(kù)的完整性約束條件也可能會(huì)隨應(yīng)用環(huán)境的改變而改變,這時(shí)DBA也要對(duì)其進(jìn)展調(diào)整,以滿足用戶的要求。5.3.2檢測(cè)并改善數(shù)據(jù)庫(kù)性能 目前許多DBMS產(chǎn)品都提供了檢測(cè)系統(tǒng)性能參數(shù)的工具,DBA可以利

28、用系統(tǒng)提供的這些工具,經(jīng)常對(duì)數(shù)據(jù)庫(kù)的存儲(chǔ)空間及響應(yīng)時(shí)間進(jìn)展分析評(píng)價(jià);結(jié)合用戶的反映情況確定改進(jìn)措施;及時(shí)改正運(yùn)行中發(fā)現(xiàn)的錯(cuò)誤;按用戶的要求對(duì)數(shù)據(jù)庫(kù)的現(xiàn)有功能進(jìn)展適當(dāng)?shù)臄U(kuò)大。但要注意在增加新功能時(shí)應(yīng)保證原有功能和性能不受損害。5.3.3重新組織和構(gòu)造數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)建設(shè)后,除了數(shù)據(jù)本身是動(dòng)態(tài)變化外,隨著應(yīng)用環(huán)境的變化,數(shù)據(jù)庫(kù)本身也必須變化以適應(yīng)應(yīng)用要求。 數(shù)據(jù)庫(kù)運(yùn)行一段時(shí)間后,由于記錄在不斷增加、刪除和修改,會(huì)改變數(shù)據(jù)庫(kù)的物理存儲(chǔ)構(gòu)造,使數(shù)據(jù)庫(kù)的物理特性受到破壞,從而降低數(shù)據(jù)庫(kù)存儲(chǔ)空間的利用率和數(shù)據(jù)的存取效率,使數(shù)據(jù)庫(kù)的性能下降。因此,需要對(duì)數(shù)據(jù)庫(kù)進(jìn)展重新組織,即重新安排數(shù)據(jù)的存儲(chǔ)位置,回收垃圾,

29、減少指針鏈,改進(jìn)數(shù)據(jù)庫(kù)的響應(yīng)時(shí)間和空間利用率,提高系統(tǒng)性能。這與操作系統(tǒng)對(duì)“磁盤碎片的處理的概念相似。數(shù)據(jù)庫(kù)的重組只是使數(shù)據(jù)庫(kù)的物理存儲(chǔ)構(gòu)造發(fā)生變化,而數(shù)據(jù)庫(kù)的邏輯構(gòu)造不變,所以根據(jù)數(shù)據(jù)庫(kù)的三級(jí)模式,可以知道數(shù)據(jù)庫(kù)重組對(duì)系統(tǒng)功能沒有影響,只是為了提高系統(tǒng)的性能。由此可知,數(shù)據(jù)庫(kù)的重組并不會(huì)改變?cè)O(shè)計(jì)的數(shù)據(jù)邏輯構(gòu)造和物理構(gòu)造,而數(shù)據(jù)庫(kù)的重構(gòu)造那么不同,它局部修改原數(shù)據(jù)庫(kù)的模式或內(nèi)模式,這主要是因?yàn)閿?shù)據(jù)庫(kù)的應(yīng)用環(huán)境發(fā)生了變化,如需求變化、設(shè)計(jì)調(diào)整等。例如增加新的數(shù)據(jù)項(xiàng)、改變數(shù)據(jù)類型、改變數(shù)據(jù)庫(kù)的容量、增加或刪除索引、修改完整性約束等。DBMS一般都提供了重新組織和構(gòu)造數(shù)據(jù)庫(kù)的應(yīng)用程序,以幫助DBA

30、完成數(shù)據(jù)庫(kù)的重組和重構(gòu)工作。 只要數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行,就需要不斷地進(jìn)展修改、調(diào)整和維護(hù)。一旦應(yīng)用變化太大,數(shù)據(jù)庫(kù)重新組織和構(gòu)造也無濟(jì)于事,這就說明數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的生命周期完畢,應(yīng)該建設(shè)新系統(tǒng),重新設(shè)計(jì)數(shù)據(jù)庫(kù)。從頭開場(chǎng)數(shù)據(jù)庫(kù)設(shè)計(jì)工作,標(biāo)準(zhǔn)著一個(gè)新的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)生命周期的開場(chǎng)。6前臺(tái)用戶界面基于C#編寫了這個(gè)教務(wù)管理系統(tǒng),并以完成了所以要求功能。數(shù)據(jù)庫(kù)連接字符串:public static string Conn = Database=school;Data Source=localhost;User Id=a;Password=a;charset=utf8;pooling=true;數(shù)據(jù)庫(kù)連接代

31、碼 MySqlConnection conn = new MySqlConnection(connectionString)用戶登錄界面登錄實(shí)現(xiàn)核心代碼string sql = string.Format(select * from admin where ADMIN_USER =0,textBox1.Text); MySql.Data.MySqlClient.MySqlDataReader reader; reader = MySqlHelper.ExecuteReader(MySqlHelper.Conn, CommandType.Text, sql, null); if (reader.HasRows) reader.Read(); string salt = readersalt.ToString(); if (re

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論