基于sql的學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告.doc
《基于sql的學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《基于sql的學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告.doc(12頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
一、實(shí)驗(yàn)題目 學(xué)生證管理系統(tǒng)數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn) 描述:設(shè)計(jì)一個(gè)學(xué)生證管理系統(tǒng)。實(shí)現(xiàn)下列功能: 1.錄入某位學(xué)生的學(xué)生證信息 2.給定學(xué)號(hào),查詢某位學(xué)生的學(xué)生證信息; 3.給定班號(hào),顯示該班所有學(xué)生的學(xué)生證信息; 4.給定學(xué)號(hào),修改該學(xué)生的學(xué)生證信息; 5.給定學(xué)號(hào),刪除該學(xué)生的學(xué)生證信息; 三、實(shí)驗(yàn)?zāi)康? 數(shù)據(jù)庫課程設(shè)計(jì)課程實(shí)驗(yàn)是對學(xué)生的一種全面綜合訓(xùn)練,是與課堂聽講、自學(xué)和練習(xí)相輔相成的必不可少的一個(gè)教學(xué)環(huán)節(jié),通過實(shí)驗(yàn)達(dá)到深化理解和靈活掌握教學(xué)內(nèi)容的目的,以及提高學(xué)生分析問題、解決問題的應(yīng)用能力。同時(shí),使學(xué)生的工作規(guī)范和科學(xué)作風(fēng)得到培養(yǎng)。 通過該課程的學(xué)習(xí),要求學(xué)生能獨(dú)立分析問題,設(shè)計(jì)算法,實(shí)現(xiàn)程序的各項(xiàng)功能,得到正確的可執(zhí)行程序,學(xué)會(huì)調(diào)試程序,對設(shè)計(jì)過程進(jìn)行系統(tǒng)的總結(jié)。 本實(shí)踐課的主要目的: 1、掌握運(yùn)用數(shù)據(jù)庫原理進(jìn)行系統(tǒng)分析和設(shè)計(jì)的方法; 2、掌握關(guān)系數(shù)據(jù)庫的設(shè)計(jì)方法; 3、掌握利用SQL Server 2000技術(shù); 4、熟悉各種SQL語句及對數(shù)據(jù)庫的訪問方法。 四、實(shí)驗(yàn)要求 1.對各個(gè)系統(tǒng)進(jìn)行系統(tǒng)功能需求分析 2. 數(shù)據(jù)庫設(shè)計(jì)分析階段,進(jìn)行詳細(xì)的數(shù)據(jù)庫需求分析,進(jìn)行概念數(shù)據(jù)庫的設(shè)計(jì),畫出數(shù)據(jù)庫的E-R圖(局部和整體E-R圖) 3. 設(shè)計(jì)出詳細(xì)的邏輯數(shù)據(jù)庫結(jié)構(gòu),將各個(gè)實(shí)體和聯(lián)系轉(zhuǎn)化為相應(yīng)的二維表即關(guān)系模式,指定各個(gè)關(guān)系的主關(guān)鍵字和外部關(guān)鍵字,并對各個(gè)關(guān)系的約束加以限定 4. 通過企業(yè)管理器或是查詢分析器實(shí)現(xiàn)各個(gè)二維關(guān)系(建議最好用SQL代碼實(shí)現(xiàn)),要求建立相關(guān)的索引 5. 根據(jù)系統(tǒng)功能需求設(shè)計(jì)相應(yīng)的查詢視圖 6. 要求根據(jù)系統(tǒng)功能需求建立存儲(chǔ)過程 7. 根據(jù)功能需求建立相應(yīng)的觸發(fā)器以保證數(shù)據(jù)的一致性 8. 通過建立用戶和權(quán)限分配實(shí)現(xiàn)數(shù)據(jù)庫一定的安全性,考慮數(shù)據(jù)庫的備份與恢復(fù) 五、實(shí)現(xiàn)思路 (一)系統(tǒng)需求分析 需求分析師整個(gè)數(shù)據(jù)庫設(shè)計(jì)過程的基礎(chǔ),要收集數(shù)據(jù)庫所有用戶的信息內(nèi)容和處理要求,并加以規(guī)格化分析。這是最費(fèi)時(shí)、最復(fù)雜的一步,但是也是最重要的一步,相當(dāng)于待構(gòu)建的數(shù)據(jù)庫大廈的地基,它決定了以后各步設(shè)計(jì)的速度和質(zhì)量。需求分析做的不好,可能會(huì)導(dǎo)致整個(gè)數(shù)據(jù)庫設(shè)計(jì)返工重做。在分析用戶需求時(shí),要確保用戶目標(biāo)的一致性。 需求分析的任務(wù)是:對現(xiàn)實(shí)世界要處理的對象(組織、部門、企業(yè))等進(jìn)行詳細(xì)的調(diào)查,通過對原系統(tǒng)的了解,收集支持新系統(tǒng)的基礎(chǔ)數(shù)據(jù)并對其進(jìn)行處理,在此基礎(chǔ)上確定新系統(tǒng)的功能。 具體地說,需求分析階段的任務(wù)包括下述三項(xiàng)。 1.調(diào)查分析用戶活動(dòng) 2.收集和分析需求數(shù)據(jù),確定系統(tǒng)邊界 3.編寫系統(tǒng)分析報(bào)告 在本課程設(shè)計(jì)中,是對學(xué)生證的信息進(jìn)行管理,學(xué)生證的信息不僅包括學(xué)生本身信息,也包括系別的信息及注冊學(xué)生證的相關(guān)注冊信息,因此本課程設(shè)計(jì)中要用到三個(gè)表,即學(xué)生信息表、系別信息表和學(xué)生證注冊表。 對學(xué)生證信息的處理包括信息的錄入、查詢、修改及刪除。 1.數(shù)據(jù)流圖: 錄入、修改、查詢、刪除 學(xué)生證 身份證明 學(xué)生 注冊 2.數(shù)據(jù)字典: 數(shù)據(jù)字典是對系統(tǒng)中數(shù)據(jù)的詳細(xì)描述,是各類數(shù)據(jù)結(jié)構(gòu)和屬性的清單。任何字典最主要的用途都是供人查閱不了解的條目的解釋,數(shù)據(jù)字典的作用也正是在軟件分析和設(shè)計(jì)過程中給人提供關(guān)于數(shù)據(jù)的描述信息。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典數(shù)據(jù)流圖就不嚴(yán)格,然而沒有數(shù)據(jù)流圖數(shù)據(jù)字典也難于發(fā)揮作用。只有數(shù)據(jù)流圖和對數(shù)據(jù)流圖精確的定義放在一起,才能共同構(gòu)成系統(tǒng)的規(guī)格說明。 我們采用卡片形式書寫數(shù)據(jù)字典,每張卡片上保存描述一個(gè)數(shù)據(jù)元素的信息。這種做法較好的實(shí)現(xiàn)了上述要求,特別是更新修改起來很方便,能夠單獨(dú)處理每個(gè)數(shù)據(jù)元素的信息。每張卡片上包含的信息有:名字,描述,定義,位置。 (1)對學(xué)生信息的管理 編號(hào) 1 名稱 學(xué)生信息管理 簡述 維護(hù)學(xué)生信息的完整性 輸入 學(xué)生姓名、學(xué)號(hào)、班級(jí)號(hào)、出生年月、性別、民族、籍貫 處理 1. 新增學(xué)生信息的錄入 2. 修改學(xué)生信息 3. 刪除學(xué)生信息記錄 4. 查詢個(gè)人學(xué)生信息及班級(jí)學(xué)生信息 輸出 學(xué)生信息表 (2)對系別信息的管理 編號(hào) 2 名稱 系別信息管理 簡述 維護(hù)系別信息的完整性 輸入 系別名,班級(jí)號(hào)等 處理 1.新增系別信息的錄入 2.修改系別信息 3.刪除系別信息記錄 4.查詢系別信息 輸出 系別信息表 (3)對學(xué)生證注冊信息的管理 編號(hào) 3 名稱 學(xué)生證注冊信息管理 簡述 維護(hù)學(xué)生證注冊信息的完整性 輸入 學(xué)號(hào),注冊日期,截止日期 處理 1.新增注冊信息的錄入 2.修改注冊信息 3.刪除注冊信息記錄 4.查詢注冊信息 輸出 注冊信息表 (二)概念結(jié)構(gòu)設(shè)計(jì) 概念結(jié)構(gòu)設(shè)計(jì)就是將需求分析得到的用戶需求抽象為信息結(jié)構(gòu),即概念模型。概念模型作為概念結(jié)構(gòu)設(shè)計(jì)的表達(dá)工具,為數(shù)據(jù)庫提供一個(gè)說明性結(jié)構(gòu),是設(shè)計(jì)數(shù)據(jù)庫邏輯結(jié)構(gòu)即邏輯模型的基礎(chǔ)。因此,概念模型必須具備以下特點(diǎn): (1)語意表達(dá)能力豐富。 (2)易于交流和理解。 (3)易于修改和擴(kuò)充。 (4)易于向各種數(shù)據(jù)模型轉(zhuǎn)換。 1.局部E-R圖: 學(xué)生信息表: 學(xué)生 姓名 學(xué)號(hào) 班級(jí)號(hào) 性別 出生年月 籍貫 民族 系別信息表: 系別 系別名 班級(jí)號(hào) 注冊信息表: 注冊信息 學(xué)號(hào) 注冊日期 截止日期 2.全局E-R圖: 系別 系別名 學(xué)生證 1 班級(jí)號(hào) 1 注冊日期 擁有 注冊 截止日期 n 1 學(xué)生 姓名 學(xué)號(hào) 性別 出生年月 籍貫 民族 (三)邏輯結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫邏輯設(shè)計(jì)的任務(wù)是將概念模型轉(zhuǎn)換成特定DBMS所支持的數(shù)據(jù)模型的過程。 在本課程設(shè)計(jì)中,存在三個(gè)實(shí)體(學(xué)生,系別,學(xué)生證),兩個(gè)聯(lián)系(包含,注冊),在學(xué)生實(shí)體中,學(xué)號(hào)作為其關(guān)鍵字;在系別實(shí)體中,系別名作為其關(guān)鍵字;而學(xué)生證的信息是由學(xué)生信息、系別信息及注冊信息組成。因此得到下列關(guān)系模式: 實(shí)體關(guān)系模式: 學(xué)生(學(xué)號(hào),姓名,性別,出生年月,籍貫,民族) 系別(系別名,班級(jí)號(hào)) 聯(lián)系關(guān)系模式: 擁有(系別名,學(xué)號(hào)) 注冊(學(xué)號(hào),注冊日期,截止日期) (四)物理結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫物理設(shè)計(jì)的任務(wù)是為上一階段得到的數(shù)據(jù)庫邏輯模式,即數(shù)據(jù)庫的邏輯結(jié)構(gòu)選擇合適的應(yīng)用環(huán)境的物理結(jié)構(gòu),既確定有效地實(shí)現(xiàn)邏輯結(jié)構(gòu)模式的數(shù)據(jù)庫存儲(chǔ)模式,確定在物理設(shè)備上所采用的存儲(chǔ)結(jié)構(gòu)和存取方法,然后對該存儲(chǔ)模式進(jìn)行性能評(píng)價(jià)、修改設(shè)計(jì),經(jīng)過多次反復(fù),最后得到一個(gè)性能較好的存儲(chǔ)模式。數(shù)據(jù)庫物理設(shè)計(jì)內(nèi)容包括記錄存儲(chǔ)結(jié)構(gòu)的設(shè)計(jì),存儲(chǔ)路徑的設(shè)計(jì),記錄集簇的設(shè)計(jì)。 確定數(shù)據(jù)存放位置:一臺(tái)裝有Windows系統(tǒng)的計(jì)算機(jī)的C盤。 確定存儲(chǔ)結(jié)構(gòu):確定關(guān)系、索引、聚簇。 六、實(shí)現(xiàn)過程 (一)建表 在企業(yè)管理器中,新建數(shù)據(jù)庫,并設(shè)置名為student。 在該數(shù)據(jù)庫中創(chuàng)建三個(gè)表,即學(xué)生信息表、系別信息表和注冊信息表,分別命名為S,D,C。 首先設(shè)計(jì)學(xué)生信息表S,包括以下屬性,及各屬性的數(shù)據(jù)類型和長度: 含義 標(biāo)識(shí) 數(shù)據(jù)類型 長度 約束 姓名 stu_name varchar 30 Not null 學(xué)號(hào) stu_no char 10 Not null,primary key 班級(jí)號(hào) class_no char 6 Not null 性別 stu_sex char 2 出生年月 stu_birthday datetime 8 民族 stu_native char 10 Default ‘漢’ 籍貫 stu_birthday varchar 30 系別信息表D: 含義 標(biāo)識(shí) 數(shù)據(jù)類型 長度 約束 系別名 dept varchar 30 Not null 班級(jí)號(hào) class_no char 6 注冊信息表C: 含義 標(biāo)識(shí) 數(shù)據(jù)類型 長度 約束 學(xué)號(hào) stu_no char 10 Not null,primary key 注冊日期 login_date datetime 8 Not null 截止日期 validity_date datetime 8 Not null 在設(shè)計(jì)表后即可向表中添加數(shù)據(jù),在添加時(shí)要注意各項(xiàng)的約束條件及數(shù)據(jù)長度限制。 (二)設(shè)置安全性及用戶權(quán)限 1.在企業(yè)管理器中,安全性一項(xiàng)中,新建登錄。 (1)設(shè)置登錄名為ll,并設(shè)置SQL server身份驗(yàn)證密碼,及默認(rèn)登錄的數(shù)據(jù)庫為student。 (2)設(shè)置該登錄用戶的服務(wù)器角色為:System Administrators。 (3)設(shè)置該登錄用戶均可訪問所有數(shù)據(jù)庫。 2.編輯SQL server注冊屬性。 (1)選擇使用SQL Server身份驗(yàn)證。 (2)設(shè)置登錄名ll及密碼。 (3)選擇總是提示輸入登錄名和密碼。 3.在student數(shù)據(jù)庫中,為用戶設(shè)置權(quán)限。 (1)設(shè)置用戶ll的數(shù)據(jù)庫角色為:public和db_owner。 (2)設(shè)置ll的用戶權(quán)限,即對S,D,C三個(gè)表均能夠Select,Update,Delete,Insert和DRI。 (三)創(chuàng)建學(xué)生證視圖 創(chuàng)建學(xué)生證信息的視圖,從三個(gè)表中選擇學(xué)生證所需信息,以便對視圖以外的數(shù)據(jù)進(jìn)行保密,簡化了查詢操作,并保證了數(shù)據(jù)的邏輯獨(dú)立性。 以下創(chuàng)建視圖Stu_card,連接D表,C表和S表,選擇所需數(shù)據(jù)項(xiàng)組成視圖。 Create view Stu_card(Dept,SName,SNo,ClassNo,Sex,Birthday,Native,Birthplace, LoginDate,ValidityDate) AS SELECT dept,S.*,login_date,validity_date FROM D,C,S WHERE D.class_no=S.class_no and C.stu_no=S.stu_no (四)實(shí)現(xiàn)對學(xué)生證的各操作功能 1.錄入學(xué)生證信息 (1)對某學(xué)生的學(xué)生證信息錄入之前,需先判斷該學(xué)生的學(xué)生證信息是否存在,如已經(jīng)存在就不能再錄入了;如果不存在,還需判斷該學(xué)生的學(xué)生信息是否存在,因?yàn)槿绻搶W(xué)生已存在學(xué)生信息,但沒有注冊學(xué)生證,則該學(xué)生也不存在學(xué)生證信息。在判斷之后再根據(jù)不同情況進(jìn)行學(xué)生證信息的錄入。 創(chuàng)建存儲(chǔ)過程InsertIf,判斷是否錄入學(xué)生證信息: create procedure InsertIf --判斷是否錄入 ( @sno varchar(10) )--設(shè)置參數(shù),通過學(xué)號(hào)查詢該學(xué)生的學(xué)生證信息使否存在 as begin declare @cant varchar(50) declare @sel varchar(50) declare @aa varchar(70) declare @bb varchar(70) set @cant=信息已存在,不能錄入 set @sel=無此學(xué)生證信息,請錄入 set @aa=有此學(xué)生信息,但未注冊,請注冊(執(zhí)行InsertC)! set @bb=無此學(xué)生信息,請錄入學(xué)生信息并為其注冊(執(zhí)行InsertS和InsertC)! if exists (select * from Stu_card where SNo=@sno) --如果存在該學(xué)生 print @cant --的學(xué)生證信息就打印出來 else begin print @sel if exists(select * from S where Stu_no=@sno) --如果不存在 print @aa --該學(xué)生證信息,但存在學(xué)生信息,說明為注冊 else print @bb --不存在學(xué)生信息,可以錄入該學(xué)生信息并注冊 end end (2)判斷后,如不存在學(xué)生證信息但存在學(xué)生信息,則需注冊。 創(chuàng)建存儲(chǔ)過程InsertC,對學(xué)生進(jìn)行注冊 create procedure InsertC --注冊,向表C中添加學(xué)生證注冊信息 ( @sno char(10), @logindate datetime, @validate datetime ) as insert into C values(@sno,@logindate,@validate) (3)判斷后,如不存在學(xué)生信息,則需錄入該學(xué)生信息,并進(jìn)行學(xué)生證注冊 創(chuàng)建存儲(chǔ)過程InsertS,錄入學(xué)生信息: create procedure InsertS //向S表中添加學(xué)生信息 ( @sname varchar(30), @sno char(10), @classno char(6), @sex char(2), @birthday datetime, @native char(2), @birthplace varchar(30) ) as insert into S values(@sname,@sno,@classno,@sex,@birthday,@native,@birthplace) 在錄入學(xué)生證信息時(shí),先添加學(xué)生信息,再執(zhí)行存儲(chǔ)過程InsertC,注冊學(xué)生證,才完整的錄入一條學(xué)生證信息。 2.查詢學(xué)生證信息 (1)給定學(xué)號(hào),查詢某位學(xué)生的學(xué)生證信息 由于學(xué)生證信息是在視圖中體現(xiàn)的,因此通過查詢視圖,可以查看學(xué)生的學(xué)生證信息. 創(chuàng)建存儲(chǔ)過程QureyInfor,傳遞參數(shù)sno,通過給定學(xué)號(hào),判斷該學(xué)生的學(xué)生證信息是否存在,如不存在,則告知不存在該學(xué)生證信息;如存在,則顯示出該學(xué)生的學(xué)生證信息. create procedure QureyInfor ( @sno char(10) ) as begin declare @cant varchar(50) set @cant=信息不存在 if exists (select * from Stu_card where SNo=@sno) select * from Stu_card where SNo=@sno else print @cant end (2)給定班號(hào),查詢該班所有學(xué)生的學(xué)生證信息 該查詢與前一查詢方法是相同的,通過查詢視圖,查看信息。 創(chuàng)建存儲(chǔ)過程DisplayInfor,傳遞參數(shù)classno,通過給定班級(jí)號(hào),判斷該班學(xué)生的學(xué)生證信息是否存在,如不存在,則告知"不存在該班學(xué)生證信息";如存在,則顯示出該班全部學(xué)生的學(xué)生證信息。 create procedure DisplayInfor ( @classno char(6) ) as begin declare @cant varchar(50) set @cant=無相關(guān)信息 if exists (select * from Stu_card where ClassNo=@classno) select * from Stu_card where ClassNo=@classno else print @cant end 3.修改學(xué)生證信息 學(xué)生證信息的修改,雖然是對視圖進(jìn)行修改,但實(shí)質(zhì)是對各表的修改。 對于學(xué)生證信息的修改,是先通過給定學(xué)生學(xué)號(hào),先判斷該學(xué)生的學(xué)生證信息是否存在,如存在,再通過添加表信息來添加學(xué)生證信息。 (1)首先創(chuàng)建存儲(chǔ)過程ModIf,用來判斷需修改的學(xué)生證信息是否存在,如不存在,則告知"不存在該學(xué)生證信息";如存在,則將該學(xué)生證原本信息顯示出來,表明可以進(jìn)行修改。 create procedure ModIf ( @sno char(10) ) as begin declare @cant varchar(50) set @cant=無此學(xué)生證信息,不能修改 if exists (select * from Stu_card where SNo=@sno) begin select * from Stu_card where SNo=@sno end else print @cant end (2)再創(chuàng)建存儲(chǔ)過程ModS,ModC及ModD,通過更新操作update對表進(jìn)行修改,以修改學(xué)生證信息。 create procedure ModS //更新S表中學(xué)生信息 ( @sname varchar(30), @sno char(10), @classno char(6), @sex char(2), @birthday datetime, @native char(2), @birthplace varchar(30) ) as update S Set stu_name=@sname,stu_no=@sno,class_no=@classno,stu_sex@sex, stu_birthday=@birthday,stu_native=@native,stu_birthplace=@birthplace create procedure ModD //更新D表中學(xué)生信息 ( @dept varchar(30), @classno char(6), ) as update S Set dept=@dept,class_no=@classno create procedure ModC --修改表C中信息 ( @sno char(10), @logindate datetime, @validate datetime ) as update C set stu_no=@sno,login_date=@logindate,validity_date=@validate 4.刪除學(xué)生證信息 在刪除學(xué)生證信息時(shí),并不是將學(xué)生證中的學(xué)生信息及相關(guān)系別信息也相應(yīng)刪除,而只是刪除該學(xué)生證的注冊信息。應(yīng)保證在刪除學(xué)生證信息同時(shí)保留該學(xué)生的學(xué)生信息及相關(guān)的系別信息。 (1)判斷該學(xué)生證信息是否存在 創(chuàng)建存儲(chǔ)過程,給定學(xué)號(hào)參數(shù),判斷是否存在該學(xué)生的學(xué)生證信息,如不存在,則告知"不存在該學(xué)生證信息",即無法刪除;如存在,則告知"存在信息",并顯示出該條信息。 該操作同樣可以使用存儲(chǔ)過程ModIf來完成,因此不需再重新創(chuàng)建。 (2)刪除信息 創(chuàng)建存儲(chǔ)過程DelInfor,給出要?jiǎng)h除的學(xué)生學(xué)號(hào),通過delete操作刪除注冊信息表C中的該條記錄,即完成學(xué)生證信息的刪除工作。 create procedure DelInfor ( @sno char(6) ) as delete from C where stu_no=@sno (3)顯示刪除后信息 在刪除完成后,通過顯示剩余全部學(xué)生證信息,確認(rèn)要?jiǎng)h除的學(xué)生證信息是否刪除成功。 創(chuàng)建觸發(fā)器DisplayAll,完成刪除工作的檢驗(yàn)工作,當(dāng)對表C進(jìn)行delete操作時(shí),通過查詢視圖,顯示剩余全部學(xué)生證信息。 create trigger DisplayAll on C for delete as select * from Stu_card 七、實(shí)驗(yàn)總結(jié) 通過一周的課程設(shè)計(jì),完成了一個(gè)簡單的學(xué)生證管理系統(tǒng),并成功實(shí)現(xiàn)了各要求所需功能。 首先,在設(shè)計(jì)方面,考慮到數(shù)據(jù)的冗余及沖突等問題,將學(xué)生證信息分別存儲(chǔ)到三個(gè)表中,考慮了系別信息數(shù)據(jù),學(xué)生信息數(shù)據(jù)及學(xué)生證注冊信息數(shù)據(jù)的獨(dú)立性問題。其次,在設(shè)計(jì)表時(shí),注意了數(shù)據(jù)的數(shù)據(jù)類型及長度的選擇,考慮各種數(shù)據(jù)的添加情況,如漢族非少數(shù)民族,在添加該項(xiàng)時(shí)將“漢”設(shè)置為默認(rèn)情況,同時(shí)還要保證不浪費(fèi)數(shù)據(jù)的存儲(chǔ)空間。第三,使用了視圖view,實(shí)現(xiàn)數(shù)據(jù)的保密性,將學(xué)生證所需信息以視圖方式存放,在數(shù)據(jù)查詢時(shí)使用視圖查詢。第四,對于各功能的實(shí)現(xiàn),均使用了存儲(chǔ)過程procedure,通過傳遞參數(shù)得到想要的結(jié)果。在實(shí)現(xiàn)功能時(shí),注意了條件的判斷,根據(jù)分析各種情況,實(shí)現(xiàn)不同的操作。例如,在實(shí)現(xiàn)信息的添加時(shí),總的分兩種情況,一是存在信息,另一個(gè)則是不存在信息,在不存在信息中又需考慮兩種情況,即存在該學(xué)生信息,但由于未注冊學(xué)生證,因此也不存在學(xué)生證信息;另一是根本不存在該學(xué)生信息。針對這兩種情況,在添加信息時(shí)就有兩種不同的方法。第四,在本系統(tǒng)中使用了觸發(fā)器trigger,觸發(fā)器用于響應(yīng)數(shù)據(jù)庫更新,因此在刪除信息時(shí),我使用了觸發(fā)器,在信息刪除后,顯示其余信息,用來確認(rèn)信息是否成功刪除。第五,設(shè)置了安全性,在數(shù)據(jù)庫中,安全性十分重要,因此,我創(chuàng)建了自己的登錄名,并對數(shù)據(jù)庫及各表的訪問設(shè)置了權(quán)限,用以保護(hù)數(shù)據(jù),防止他人任意修改。 但由于個(gè)人的經(jīng)驗(yàn)、知識(shí)等方面的不足,并且時(shí)間比較匆忙,本系統(tǒng)還存在著許多缺陷。首先,在需求分析時(shí),未能做到完全滿足用戶需要,而且整個(gè)系統(tǒng)漏洞很多,對表的設(shè)計(jì)也不夠完善,對數(shù)據(jù)的完整性,獨(dú)立性等方面的要求考慮的還不夠充分。其次,本系統(tǒng)可以與VC,VB等編譯工具相互配合,使其實(shí)現(xiàn)的更人性化,界面化,操作更方便,安全性更好。 在本系統(tǒng)中,還有很多需改進(jìn)的地方,相信通過一點(diǎn)點(diǎn)的改善,該系統(tǒng)會(huì)更完善。 八、心得體會(huì) 通過這次課程設(shè)計(jì),我了解到自身在許多相關(guān)知識(shí)方面都認(rèn)識(shí)得不夠深刻,致使在實(shí)際的運(yùn)行操作中遇到許多困難與阻礙。在實(shí)驗(yàn)過程中,許多問題都在與同學(xué)的討論中得到解決,并在討論過程中,又對所學(xué)有了新的體會(huì),學(xué)到了更多的知識(shí)。經(jīng)過一周的課程設(shè)計(jì),體會(huì)到想要做一個(gè)完善的,功能全面的系統(tǒng),僅僅依靠課本上學(xué)習(xí)的知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,不僅僅相關(guān)的專業(yè)知識(shí)要熟練運(yùn)用,對所做的系統(tǒng)用途也要充分了解,等等這些都要花費(fèi)時(shí)間與精力。在設(shè)計(jì)過程中,發(fā)現(xiàn)到合作的重要性,相互之間的溝通對系統(tǒng)的完成也有很大幫助。總之,這一周的課程設(shè)計(jì),不僅僅是一次簡單的見習(xí),對以后的工作與生活都是一次經(jīng)驗(yàn)的積累。- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 基于 sql 學(xué)生 成績管理系統(tǒng) 課程設(shè)計(jì) 報(bào)告
鏈接地址:http://m.italysoccerbets.com/p-6522907.html