版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件工程課程設(shè)計(jì)題目 學(xué)校教材訂購(gòu)系統(tǒng) 學(xué)院 嘉興學(xué)院 專業(yè) 信息管理和信息系統(tǒng) 班級(jí) 信息N052 學(xué)號(hào) 01 07 15 學(xué)生姓名 顏幼幼徐晶俞麗 扌指導(dǎo)教師 張?jiān)?編寫日期 2009年2月21日 一、開(kāi)發(fā)計(jì)劃:1、系統(tǒng)敘述在21世紀(jì)的今天,隨著計(jì)算機(jī)技術(shù)和計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展,人們逐漸開(kāi)始步入信息時(shí)代。通過(guò)Internet網(wǎng)絡(luò)人們可以瀏覽各類信息,發(fā)送電子郵件,傳送文件,參與BBS,網(wǎng)上娛樂(lè),遠(yuǎn)程教育,遠(yuǎn)程醫(yī)療。人們?nèi)粘9ぷ?,生活中的許多事情都已經(jīng)可以在網(wǎng)上輕松簡(jiǎn)單的完成?;ヂ?lián)網(wǎng)因?yàn)樗?jiǎn)單的操作和強(qiáng)大的信息量,逐漸成為了人們工作中的好幫手和生活中不可缺少的重要組成部分。近年來(lái),互聯(lián)網(wǎng)也開(kāi)始涉及學(xué)校的教材訂購(gòu),教材訂購(gòu)系統(tǒng)近幾年在各高校逐漸得到廣泛的應(yīng)用。但有些教材征訂系統(tǒng),仍然存在著在教材管理和征訂方面半手工半信息化的狀況。所謂半手工半信息化是教材科有詳細(xì)的教材資料,并把他們存放在電子文檔中。每次需要信息時(shí),在電腦中找到對(duì)應(yīng)文檔提取所需信息,把所需的信息打印或手抄出來(lái)。即教材信息沒(méi)有形成一個(gè)大型的整體的數(shù)據(jù)庫(kù),而且還沒(méi)有對(duì)這些數(shù)據(jù)進(jìn)行操作的網(wǎng)絡(luò)應(yīng)用程序。目前國(guó)內(nèi)大部分的學(xué)校都是這種情況。針對(duì)這一情況,我們研究和開(kāi)發(fā)了“學(xué)校教材訂購(gòu)系統(tǒng)”作為深入研究解決這一問(wèn)題辦法的初步嘗試。2、 問(wèn)題的提出及發(fā)展背景隨著教學(xué)數(shù)量的提高,對(duì)軟件質(zhì)量的要求也越來(lái)越高,因此,教師、學(xué)生對(duì)教材的訂購(gòu)了越來(lái)越重視,希望獲取教材的過(guò)程簡(jiǎn)單,方便,快速,因而,做一個(gè)好的訂購(gòu)系統(tǒng)是十分重要的。訂購(gòu)是指教師或?qū)W生向工作人員提供要采購(gòu)的教材,經(jīng)工作人員審查后,發(fā)給教師或?qū)W生發(fā)票,然后去書庫(kù)去領(lǐng)取教材,但工作人員發(fā)現(xiàn)書庫(kù)中缺貨時(shí),要及時(shí)的向采購(gòu)部報(bào)告,采購(gòu)部要及時(shí)的進(jìn)貨,然后,工作人員來(lái)修改記錄。3、 目標(biāo)系統(tǒng)敘述本系統(tǒng)主要解決通過(guò)ASP.NET程序制作WEB應(yīng)用程序,通過(guò)該應(yīng)用程序?qū)崿F(xiàn)對(duì)數(shù)據(jù)庫(kù)的整合以及對(duì)數(shù)據(jù)庫(kù)的操作。數(shù)據(jù)庫(kù)的整合就是把現(xiàn)在的零散的數(shù)據(jù)庫(kù)經(jīng)過(guò)分類,綜合整理成一個(gè)大型的數(shù)據(jù)庫(kù)。所需數(shù)據(jù)都可以從里面調(diào)用,數(shù)據(jù)庫(kù)操作主要指添加,刪除,查詢等數(shù)據(jù)庫(kù)基本操作。系統(tǒng)的設(shè)計(jì)首先著眼的是網(wǎng)絡(luò),學(xué)生或教師可以通過(guò)本系統(tǒng)向教材訂購(gòu)人員提交所需教材的詳細(xì)信息,教材訂購(gòu)系統(tǒng)可以統(tǒng)計(jì)教材信息。因此本系統(tǒng)方便了學(xué)校教材訂購(gòu)部門的工作,提高了工作效率。主要功能包括:1、收集數(shù)據(jù)。將學(xué)生教師的訂書單和缺書通知單單收集起來(lái)。2、打印報(bào)表。產(chǎn)生待購(gòu)教材表、進(jìn)庫(kù)表和出庫(kù)表等各種統(tǒng)計(jì)報(bào)表3、可行性分析及開(kāi)發(fā)計(jì)劃在技術(shù)上的可行性分析,本系統(tǒng)可細(xì)化為兩個(gè)子系統(tǒng):銷售系統(tǒng)和采購(gòu)系統(tǒng)銷售系統(tǒng)的工作過(guò)程為:首先由教師或?qū)W生提交購(gòu)書單,經(jīng)教材發(fā)行人員審核是有效購(gòu)書單后,開(kāi)發(fā)票、登記并返給教師或?qū)W生領(lǐng)書單,教師或?qū)W生即可去書庫(kù)領(lǐng)書。采購(gòu)系統(tǒng)的主要工作過(guò)程為:若是脫銷教材,則登記缺書,發(fā)缺書單給書庫(kù)采購(gòu)人員;一旦新書入庫(kù)后,即發(fā)進(jìn)書通知給教材發(fā)行人員。當(dāng)書庫(kù)中的各種書籍?dāng)?shù)量發(fā)生變化(包括領(lǐng)書和進(jìn)書時(shí)),都應(yīng)修改相關(guān)的書庫(kù)記錄,如庫(kù)存表或進(jìn)/出庫(kù)表。在對(duì)現(xiàn)行系統(tǒng)的情況調(diào)查的基礎(chǔ)上,得出系統(tǒng)的邏輯模型。二、需求分析1、需求定義說(shuō)明書此教材采購(gòu)系統(tǒng)分為兩個(gè)模塊:采購(gòu)系統(tǒng)和銷售系統(tǒng)。具體見(jiàn)下圖層次數(shù)據(jù)流圖。銷售系統(tǒng)模塊:提交購(gòu)書單、審核購(gòu)書單、開(kāi)發(fā)票、登記購(gòu)書紀(jì)錄、返回領(lǐng)書單、修改和維護(hù)數(shù)據(jù)庫(kù)中相應(yīng)的表。采購(gòu)系統(tǒng)模塊:發(fā)缺書臺(tái)州單、登記缺書紀(jì)錄、擬訂待購(gòu)書信息、發(fā)進(jìn)書通知單、修改和維護(hù)數(shù)據(jù)庫(kù)中相應(yīng)的表。教材管理信息系統(tǒng)的服務(wù)對(duì)象為全校師生員工,系統(tǒng)的使用對(duì)象為教務(wù)處教材管理人員及書庫(kù)管理員。系統(tǒng)主要完成以下具體功能:(1)預(yù)定新書購(gòu)書者購(gòu)買書庫(kù)暫時(shí)沒(méi)有的書,可以進(jìn)行預(yù)訂,由教務(wù)處工作人員進(jìn)行采購(gòu)。(2)購(gòu)書購(gòu)書者到財(cái)務(wù)室辦理繳費(fèi)手續(xù),然后憑此手續(xù)去書庫(kù)取書。(3)書出庫(kù)書從書庫(kù)領(lǐng)出,管理員修改書庫(kù)記錄。(4)書入庫(kù)采購(gòu)人員把采購(gòu)的書送入書庫(kù),管理員修改書庫(kù)記錄。(5)書庫(kù)維護(hù)對(duì)現(xiàn)有的書分類、統(tǒng)計(jì)、增添新書目或刪除不存在的舊書目錄等,一般由書庫(kù)管理人員來(lái)完成。2、數(shù)據(jù)流圖將數(shù)據(jù)流圖模塊中的內(nèi)容進(jìn)一步細(xì)化,便于理解與設(shè)計(jì)。學(xué)生信息包括:姓名、學(xué)號(hào)、購(gòu)書日期、采購(gòu)書籍名稱、書籍編碼、書籍?dāng)?shù)量、單價(jià)、聯(lián)系方式。老師信息包括:姓名、編號(hào)、購(gòu)書日期、采購(gòu)書籍名稱、書籍編碼、書籍?dāng)?shù)量、單價(jià)、聯(lián)系方式。書籍信息包括:書籍名稱、書籍編碼、價(jià)格、現(xiàn)有數(shù)量、出版社、作者。購(gòu)書單信息包括:日期、書籍名稱、數(shù)量、學(xué)生(老師)姓名、購(gòu)書人員編號(hào)缺書單信息包括:日期、書籍名稱、數(shù)量、學(xué)生(老師)姓名、發(fā)行人員編號(hào)發(fā)行人員信息包括:書籍名稱、數(shù)量、日期、發(fā)行人員編號(hào)、聯(lián)系方式。采購(gòu)人員信息包括:書籍名稱、數(shù)量、日期、采購(gòu)人員編號(hào)、聯(lián)系方式。將細(xì)化的數(shù)據(jù)流圖用圖形表示出來(lái):如下圖領(lǐng)書單圖2-1教材訂購(gòu)系統(tǒng)數(shù)據(jù)流程圖在數(shù)據(jù)流圖分解時(shí),每個(gè)變動(dòng)都可能引出新的問(wèn)題。這些問(wèn)題的回答可以到處數(shù)據(jù)字典的新條目,發(fā)現(xiàn)后及時(shí)更正。隨著分析過(guò)程的深入,通過(guò)不斷地提問(wèn)和問(wèn)答,把軟件系統(tǒng)定義得越來(lái)越準(zhǔn)確詳細(xì)。最終就能對(duì)系統(tǒng)的功能要求有一個(gè)較全面的認(rèn)識(shí)。應(yīng)當(dāng)高度重視:通過(guò)各層數(shù)據(jù)流圖和數(shù)據(jù)字典把對(duì)系統(tǒng)的完整認(rèn)識(shí)描述出來(lái),并作為正式文檔保存。三、概要設(shè)計(jì)(系統(tǒng)設(shè)計(jì)):1、系統(tǒng)功能模塊結(jié)構(gòu)圖根據(jù)需求分析,學(xué)校教材訂購(gòu)系統(tǒng)功能模塊結(jié)構(gòu)圖如下:
銷售子系統(tǒng)2、數(shù)據(jù)庫(kù)概要設(shè)計(jì)(E-R圖)學(xué)校教材訂購(gòu)系統(tǒng)中,其主要的實(shí)體分別為用戶(教師和學(xué)生)、教材管理人員,經(jīng)分析后,得到主要E-R圖,如圖所示。書籍名編號(hào)庫(kù)存量出版社書籍
書籍名編號(hào)庫(kù)存量出版社書籍進(jìn)一步對(duì)學(xué)校教材訂購(gòu)系統(tǒng)的銷售過(guò)程和采購(gòu)過(guò)程進(jìn)行數(shù)據(jù)流程分析,本系統(tǒng)應(yīng)當(dāng)具有如下的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):開(kāi)發(fā)過(guò)程中建立了名為book的數(shù)據(jù)庫(kù),下設(shè)book07、book08、adminlist等表如圖3-1所示:蓉QL古;4±工口巳工Kxi-t^xr:pKr± ??比[11世聖*xrv1J|-IKI l^fl-ia'i 百石「0 T±±H商口世〉 YlfLlJiiH-i4fs[ee][?srf?i 送-■:7:S恥問(wèn)也制就1蒔超臺(tái)根 SQLServersXSQLSer^?erftlX.(local)CVindowsHLJ羥制白根目務(wù)白? MiarosoftSQLSarvii's白OSQLServer組白龜CLo-zil:!CWind-^wsKT)卓o數(shù)握庫(kù)白…詡hookV去系ElElstTV r.;-i-HUI1咅稱 1所有者 1類型?]!s.dl.rninJ.ix-L d/b 口 用^^|~1bo.:.kO7 3b o 用戶| 1fa□aldJB db a 用戶_訂dtpi-op4i-ti db o 系主充"Tx^rxe口lumnEc tlb 口 .主帝圖3-1book數(shù)據(jù)庫(kù)圖表asminlist用于存放系統(tǒng)管理員和老師或?qū)W生的登陸用戶名和密碼,其中帳號(hào)為主碼,如圖3-2adminlist圖所示。植]表-ad>inlist"中腳數(shù)據(jù),位置是"book"中帳號(hào)密碼klioooo^^^^H1234510001123451LI0LI21234510003123451LI0LI4123451000512345
圖3-2adminlist圖表book07用于存放過(guò)去兩個(gè)學(xué)期中計(jì)算機(jī)系所有已定教材的信息,其中書號(hào)為主碼,如圖3-3表book07圖所示。植]表"bookOT"中的軟據(jù),位置是"book"中、-(local)"上甬呂 I書客 唯者 丨肝宗時(shí)間 |埶雖 —101高等數(shù)學(xué)7102法律7103710471057201VFP匚語(yǔ)言管理學(xué)統(tǒng)計(jì)學(xué)2UU72007200720072UU7ZUUi7203TZD4會(huì)計(jì)JAVA2007101高等數(shù)學(xué)7102法律7103710471057201VFP匚語(yǔ)言管理學(xué)統(tǒng)計(jì)學(xué)2UU72007200720072UU7ZUUi7203TZD4會(huì)計(jì)JAVA20072007ZOOT圖3-31 681 E81681 681 68U Gu8 E88 68a ba表book07圖表book08用于存放本學(xué)期需要征訂的教材,同樣,書號(hào)為主碼,如圖3-4表book08圖所示。謔]表abook08-中的數(shù)據(jù),隹置是abook"中、-(local)"±書號(hào)書名 作者征定時(shí)間 數(shù)量書號(hào)書名 作者征定時(shí)間 數(shù)量p*Zinl高尊數(shù)學(xué)p*Zinl高尊數(shù)學(xué)7201銃計(jì)學(xué)8102網(wǎng)站逢設(shè)8103軻牛工程8702市場(chǎng)営銷SS,.TOC\o"1-5"\h\z2007-1 606 681 682008-1 682008-1 80圖3-4表book08圖四、詳細(xì)設(shè)計(jì)根據(jù)功能模塊用程序流程圖進(jìn)行詳細(xì)設(shè)計(jì)和各模塊詳細(xì)設(shè)計(jì)說(shuō)明書如下:銷售子系統(tǒng)模塊程序流程圖:
五、界面設(shè)計(jì)及主要代碼本系統(tǒng)主要有登陸界面load.aspx,顯示書目信息及功能模塊選擇頁(yè)面book.aspx,添加新記錄頁(yè)面new.aspx,添加歷史記錄頁(yè)面history.aspx和historyl.aspx,修改記錄update.aspx和updatel.aspx以及刪除記錄delete.aspx八個(gè)頁(yè)面組成?其中登陸與用datagrid兩大模塊的代碼編寫與設(shè)計(jì).具體設(shè)計(jì)如下:5.1登陸界面當(dāng)單擊確定按鈕時(shí),連接數(shù)據(jù)庫(kù),確定輸入的帳號(hào)和密碼是否匹配,跳轉(zhuǎn)到書目的頁(yè)面,若不匹配,則彈出帳號(hào)錯(cuò)誤或密碼錯(cuò)誤的提示。如圖5-1所示■■=:==.-- —=■:—-=■=.1■_T-—. xamniHiirrTKi:I ■延txJLq,i ? 暑,也誹;“ ―- a■■V: Jim y=wlw、u歡迎使用學(xué)狡教財(cái)訂購(gòu)寒統(tǒng)■W*l-iM書kn:圖5-1具體代碼如下:PrivateSubbuttonl_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handlesbuttonl.ClickDimstrAsStringDimpassstrAsStringpassstr=Trim(CStr(TextBox2.Text))str="'"&TextBox1.Text&"'"DimsqlAsString=""select*fromadminlistwhere帳號(hào)二"&Trim(str)'在數(shù)據(jù)庫(kù)中搜索帳號(hào)為textboxl.text的數(shù)據(jù)'DimconnstrAsString="server=localhost;uid=sa;pwd=;database=book"DimmyconnAsNewSqlClient.SqlConnection(connstr)DimdaAsNewSqlClient.SqlDataAdapter(sql,myconn)DimdsAsNewDataSetda.Fill(ds,"adminlist")DimdacommAsSqlClient.SqlCommandBuilder=NewSqlClient.SqlCommandBuilder(da)Ifds.Tables("adminlist").Rows.Count=lThen'判斷帳號(hào)密碼是否和數(shù)據(jù)庫(kù)匹配'Ifpassstr二Trim(ds.Tables(""adminlist"").Rows(0)("密碼""))ThenResponse.Redirect("book.aspx")ElseResponse.Write(""密碼錯(cuò)誤!"")EndIfElseResponse.Write(""用戶名不存在!")EndIfEndSubEndClass5.2用datagrid顯示數(shù)據(jù)首先建立datagrid,通過(guò)連接數(shù)據(jù)庫(kù),將數(shù)據(jù)顯示在datagrid中。如圖5-2所示
”⑴ UL>1<■詁OP;町丈;“ T乜?一』- 必歡迎使用學(xué)校教材訂購(gòu)系統(tǒng)lid]HO7-E(0IBlid]HO7-E(0IBLlO2L冏時(shí)&哽期昭取潯工程2W3-LTffl3M-1?書號(hào) fi* 惟電 誓建"H常EB? 匂?堅(jiān)?it圖5-2書目頁(yè)面book.aspx具體代碼如下:PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Loadbinddata()EndSubSubbinddata()DimmyconnectionAsNewSqlConnection("initialcatalog=book;uid=sa;pwd=")ConststrsqlAsString="select*frombook08orderby書號(hào)"DimmycommandAsNewSqlCommand(strsql,myconnection)DimmydaAsNewSqlDataAdaptermyda.SelectCommand=mycommandDimmydsAsNewDataSetmyda.Fill(myds)DataGridl.DataSource=mydsDataGridl.DataBind()EndSub5.3添加歷史書目(1)history.aspx在登陸系統(tǒng)并選擇插入歷史書本后,進(jìn)入添加歷史書目的頁(yè)面,決定
選擇哪條記錄進(jìn)行添加。如圖5-3插入歷史書目圖所示£■lliaft*rr-li-rE-axaf4Ivt-irnallap-b-Brnr丈pifi■由叩It t?■.電I THiff理陰v_£JWH"1口八麗征足時(shí)臨T1KL王時(shí)20DT-1TIDE強(qiáng)一20DT-1T1K冊(cè)200T-1T1H:v_£JWH"1口八麗征足時(shí)臨T1KL王時(shí)20DT-1TIDE強(qiáng)一20DT-1T1K冊(cè)200T-1T1H:ctfS李明200T-1T1K300T-1T3HL統(tǒng)卄半3QUT-ST3DS財(cái)靂晉理200T-ST2K1f.fi300T-8T204200T-?<>£仝呂TnirdHiBt~if*h「3AjiL?y■?lcj圖5-3插入歷史書目圖在單擊左側(cè)的選擇后,自動(dòng)跳轉(zhuǎn)到updatel.aspx,根據(jù)所選擇的書目,進(jìn)行相應(yīng)的修改后添加到記錄中去。具體代碼如下:頁(yè)面登陸事件代碼:PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.LoadIfNotPage.IsPostBackThenbinddata()EndIfEndSub連接數(shù)據(jù)庫(kù):Subbinddata()DimmyconnectionAsNewSqlConnection(“initialcatalog二book;uid二sa;pwd二“)ConststrsqlAsString=“select*frombook07orderby書號(hào)"DimmycommandAsNewSqlCommand(strsql,myconnection)DimmydaAsNewSqlDataAdapter
Myda.SelectCommand=mycommandDimmydsAsNewDataSetMyda.Fill(myds)DataGrid1.DataSource=mydsDataGrid1.DataBind()EndSub確定所選擇的行的數(shù)據(jù),并把該行相應(yīng)的內(nèi)容分別通過(guò)session變量?jī)?chǔ)存下來(lái)。PrivateSubDataGrid1_ItemCommand(ByValsourceAsObject,ByValeAsSystem.Web.UI.WebControls.DataGridCommandEventArgs)HandlesDataGrid1.ItemCommandDimb_noAsTableCell=e.Item.Cells(1)Dimb_nameAsTableCell=e.Item.Cells(2)Dimb_aAsTableCell=Dimb_aAsTableCell=e.Item.Cells(3)Dimb_bAsTableCell=e.Item.Cells(4)Dimb_cAsTableCell=e.Item.Cells(5)=b_no.Text=b_no.Text=b_name.Text=b_a.Text=b_b.Text=b_c.TextSession(“b”)Session(“c”)Session(“d”)Session(“e”)Response.Redirect(“history1.aspx”)EndSubButton_click事件,重定向到book.aspx頁(yè)面PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickResponse。Redirect(“book.aspx")EndSubEndclass(2)historyl.aspx頁(yè)面:通過(guò)上一個(gè)頁(yè)面的選擇后,該頁(yè)面進(jìn)行修改并添加的操作。如圖4-4修改添加記錄圖所示:■-……丄西1EWQI■■斗 Eh"IJI^j0^-0簡(jiǎn)迪戶■■由j鮎缶尋曲"口F' /Uh!iliLjriC-r4IBi!|4lAm!-?y|jlAfri*-b仁J:用;L!f4!I出-wik-■W-n-i- 1”-**-E-HESi3f弓1冬凹士審*EH圖5-4添加記錄圖該頁(yè)面中將征定時(shí)間和數(shù)量的值用textbox表示,是為了方便在插入歷史書目的時(shí)候修改它的時(shí)間和它的數(shù)量。當(dāng)管理員修改完成后,則可單擊確定添加操作,將數(shù)據(jù)添加到08年的數(shù)據(jù)庫(kù)中。具體代碼如下:頁(yè)面登陸代碼:PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.LoadIfNotIsPostBackThenDimstrAsStringstr=“'“&Label6.Text&“'“DimsqlAsString二“select*frombook07where書號(hào)二“&Trim(Session(“a”))DimconnstrAsString=“server=localhost;uid二sa;pwd二;database二book”DimmyconnAsNewSqlClient.SqlConnection(connstr)DimdaAsNewSqlClient.SqlDataAdapter(sql,myconn)DimdsAsNewDataSetDa.Fill(ds,“book07”)DimdacommAsSqlClient.SqlCommandBuilder=NewSqlClient.SqlCommandBuilder(da)Label6.Text=ds.Tables(“book07”).Rows(0)(“書號(hào)”)Label7.Text=ds.Tables(“book07”).Rows(0)(“書名”)Label8.Text=ds.Tables(“book07”).Rows(0)(“作者”)TextBoxl.Text=ds.Tables(“book07”).Rows(0)(“征定時(shí)間”)TextBox2.Text=ds.Tables(“bookO7”).Rows(0)(“數(shù)量”)EndIfEndSub修改后添加到數(shù)據(jù)庫(kù)的代碼:PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDimstrAsStringDimlitemAsListItemstr=“'“&Label6.Text&“'“DimsqlAsString=“select*frombook08where書號(hào)=“&Trim(str)DimconnstrAsString=“server=localhost;uid=sa;pwd=;database=book”DimmyconnAsNewSqlConnection(connstr)DimdaAsNewSqlDataAdapter(sql,myconn)DimdsAsNewDataSetda。Fill(ds,“book08”)DimmyrowAsDataRowDimdacommAsSqlClient.SqlCommandBuilder=NewSqlClient.SqlCommandBuilder(da)Ifds.Tables(“book08”).Rows.Count>=1ThenResponse.Write(“此書已存在”)EndIfmyrow=ds.Tables(“book08”).NewRowmyrow(“書號(hào)”)二Trim(Label6.Text)myrow(“書名”)二Trim(Label7.Text)
myrow(“作者”)=Trim(Label8.Text)myrow(“征定時(shí)間”)二Trim(TextBoxl.Text)myrow(“數(shù)量”)二Trim(TextBox2.Text)ds.Tables(“book08”).Rows.Add(myrow)da.UpdateCommand=dacomm.GetUpdateCommandda.Update(ds,“book08”)Response.Redirect(“book.aspx")EndSub單擊返回按鈕后,重定向到history.aspx的代碼:PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.ClickResponse.Redirect(“history.aspx")EndSubEndClass5.4刪除記錄在登陸系統(tǒng)后點(diǎn)擊修改按鈕進(jìn)入修改頁(yè)面delete.aspx,通過(guò)復(fù)選框的選擇,刪除數(shù)據(jù)。如下圖5-5刪除頁(yè)面所示:S'討■艙- InlrirmFInflagfl?-ffQ砂叩■■M-yO"-O'-X;'/■■ji.?'0■■■.<] ■片i處近〒打旳秋?丁了采7不刁d節(jié)號(hào)■AS0壬洋輩旳wr-eoE3.CQn昭■諛耳月:SBB-】口fl騙阪-I□BT1X2R懺W-3圖5-5刪除頁(yè)面該頁(yè)面通過(guò)復(fù)選框的操作刪除數(shù)據(jù)后,重定向回該頁(yè)面,以便顯示刪除后數(shù)據(jù)的更新。具體代碼如下:頁(yè)面登陸代碼:PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.LoadIfNotPage.IsPostBackThen‘用來(lái)確認(rèn)頁(yè)面是否第一次登陸'binddata()EndIfEndSubSubbinddata()‘連接到數(shù)據(jù)庫(kù)'DimmyconnectionAsNewSqlConnection(“initialcatalog=book;uid=sa;pwd=“)ConststrsqlAsString=“select*frombook08orderby書號(hào)”DimmycommandAsNewSqlCommand(strsql,myconnection)DimmydaAsNewSqlDataAdapterMyda.SelectCommand=mycommandDimmydsAsNewDataSetMyda.Fill(myds)DataGrid1.DataSource=mydsDataGrid1.DataBind()'myda.Update(myds,“book08”)EndSubButton_click事件:PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDimiAsIntegerDimxAsStringDimitemAsDataGridItemFori=0ToDataGridl.Items.Count-1item=DataGrid1.Items(i)DimbookcheckboxAsCheckBox=item.FindControl(“checkbox1”)Ifbookcheckbox.CheckedThen‘確認(rèn)數(shù)據(jù)是否被點(diǎn)擊進(jìn)行刪除'x=item.Cells(1).Text‘x為datagrid第二列的數(shù)據(jù)的內(nèi)容'deletedataset(x)EndIfNextbinddata()Response.Write(“刪除成功!”)EndSubSubdeletedataset(ByValyAsString)DimconAsNewSqlConnection(“initialcatalog=book;uid=sa;pwd=“)DimcmdAsSqlCommandDimqryAsStringCon.Open()qry=“deletebook08where書號(hào)='“&y&“'“cmd=NewSqlClient.SqlCommand(qry,con)cmd.ExecuteNonQuery()con.Close()EndSubButton_click的重定向事件PrivateSubButton2_Click(ByValsenderAsSystem。Object,ByValeAsSystem.EventArgs)HandlesButton2.ClickResponse.Redirect(“book.aspx”)EndsubEndclass添加新教材和修改記錄兩大模塊共三個(gè)頁(yè)面的代碼編寫與設(shè)計(jì)。具體設(shè)計(jì)如圖5-6所示:歡迎使用學(xué)校教材訂購(gòu)系統(tǒng)圖5-6添記錄頁(yè)面new.Aspx(1)添加新教材。在登陸系統(tǒng)并選擇錄入新書后,進(jìn)入添加新教材頁(yè)面。如3-6圖所示:對(duì)textbox1到textbox5添加RequiredFiledValidator控件,并設(shè)置相應(yīng)屬性使textbox中的文本不能為空。對(duì)textbox1添力口RegularExpressionValidator控件,設(shè)置ValidationExpression屬性為”\d[4]”,ErrorMessage為”書號(hào)的格式為0001”。對(duì)textbox1添加RangeValidator控件,設(shè)置MinimunValue為”0001”,MaxmumValue為”9999”。使書號(hào)的取值范圍為0001——9999。對(duì)textbox4添力口RegularExpressionValidator控件,設(shè)置ValidationExpression屬性為”\d{4}-\d{1,2}”,使時(shí)間格式為2008-1。對(duì)textbox5添加RangeValidator控件,設(shè)置MinimunValue為”1”,MaxmumValue為”99”,使訂閱的教材數(shù)量在1-99本之間。該頁(yè)面程序代碼如下:PageLoad事件代碼PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.LoadEndSubButtonClick事件代碼PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDimstrAsStringDimlitemAsListItemstr二"""&TextBoxl。Text&"""DimsqlAsString="select*frombook08where書號(hào)二"&Trim(str)DimconnstrAsString="server=localhost;uid=sa;pwd=;database=book"DimmyconnAsNewSqlConnection(connstr)DimdaAsNewSqlDataAdapter(sql,myconn)DimdsAsNewDataSetda。Fill(ds,"book08")DimmyrowAsDataRowDimdacommAsSqlClient.SqlCommandBuilder=NewSqlClient.SqlCommandBuilder(da)Ifds.Tables("book08").Rows.Count>=1ThenResponse.Redirect("new.aspx")Response.Write("書號(hào)重復(fù),請(qǐng)重新輸入")EndIfmyrow=ds.Tables("book08").NewRowmyrow("書號(hào)")二Trim(TextBoxl.Text)myrow("書名")二Trim(TextBox2.Text)myrow("作者")二Trim(TextBox3.Text)myrow("征定時(shí)間")二Trim(TextBox4.Text)myrow("數(shù)量")二Trim(TextBox5.Text)ds.Tables("book08").Rows.Add(myrow)da.UpdateCommand=dacomm.GetUpdateCommandda.Update(ds,"book08")Response.Redirect("book.aspx")EndSub(2)修改記錄。在登陸系統(tǒng)后點(diǎn)擊修改按鈕進(jìn)入修改頁(yè)面update.aspx。如圖5-7所示:
展層*f調(diào)filltlol?tttf2OT4圻卄AS聊沖A&n^iiA4JI蹄IS^IfiTH2tM6-t?4:SJ7iY>估星i*柯wwe-i]直用汝■嘔1 直用汝■嘔1 制■詁?Udi1會(huì)暹bd■Xi.€4■:.對(duì)Lir>mTidfaMMA.gLrZs?rt? —£J襯歡迎使用芋校教材訂購(gòu)系統(tǒng)圖5-7修改頁(yè)面update.Aspx在該頁(yè)面設(shè)計(jì)中添加SqlDataAdapter控件和DataSet控件,用于執(zhí)行ADO。NET數(shù)據(jù)庫(kù)訪問(wèn)的相關(guān)操作。該頁(yè)中的數(shù)據(jù)通過(guò)DataGrid控件顯示,設(shè)置相應(yīng)屬性,將其綁定到表book08,使其顯示book08中的數(shù)據(jù)。在DataGrid控件中添加一個(gè)按鈕列,列名為選擇。當(dāng)用戶點(diǎn)擊該列的按鈕時(shí)自動(dòng)獲取該行的相關(guān)值,將其賦值給Session變量并跳轉(zhuǎn)到updatel。aspxoupdate1。aspx如圖:5-8所示!**看埠1匚|!**看埠1匚|-liririutfribiiarwrZFCPM1JAITHmiEl71 ■*L>3刑?. “『,.護(hù)r?■?: -. - 心-hii■Tfi斗??MOifHHipF~圖5-8修改選擇后的記錄updatel.aspx頁(yè)面中textbox的文本來(lái)自與update.aspx中定義并賦值的Session變量。用戶通過(guò)修改其中的文本值并單擊確定完成修改。修改部分代碼如下:update.aspx中的PageLoad事件PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.LoadIfNotPage.IsPostBackThenbinddata()EndIfEndSub用于加載頁(yè)面及確認(rèn)是否第一次訪問(wèn)。Update.aspx中的binddata事件privateSubbinddata()DimmyconnectionAsNewSqlConnection("initialcatalog=book;uid=sa;pwd=")ConststrsqlAsString=""select*frombook08orderby書號(hào)"Dimmycommand
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 手術(shù)室的設(shè)備與工具
- 《as應(yīng)用教程的》課件
- 肺葉切除手術(shù)護(hù)士配合
- 新建機(jī)房施工合同范例
- 用人服務(wù)合同范例
- 藥品研發(fā)合作合同范例
- 虹口5噸叉車租賃合同范例
- 水泥經(jīng)銷商合同范例
- 個(gè)體戶房屋購(gòu)買合同范例
- 汽車抵押分期合同范例
- 北疆文化全媒體傳播體系的構(gòu)建與實(shí)踐
- 低血糖暈厥應(yīng)急演練預(yù)案
- 四川省成都市某中學(xué)2024-2025學(xué)年高一年級(jí)上冊(cè)11月期中考試 英語(yǔ)試卷(含答案)
- 2025屆福建省廈門市重點(diǎn)中學(xué)高三第二次聯(lián)考語(yǔ)文試卷含解析
- OpenCV計(jì)算機(jī)視覺(jué)基礎(chǔ)教程(Python版)教學(xué)教案
- 2024年度二人合伙光伏發(fā)電項(xiàng)目投資合同3篇
- 2024-2030年中國(guó)室內(nèi)滑雪場(chǎng)市場(chǎng)需求預(yù)測(cè)及發(fā)展規(guī)劃研究報(bào)告
- 期末綜合素養(yǎng)評(píng)價(jià)一(試題)-2024-2025學(xué)年三年級(jí)上冊(cè)科學(xué)教科版
- 期末 (試題) -2024-2025學(xué)年人教PEP版英語(yǔ)六年級(jí)上冊(cè)
- 動(dòng)車運(yùn)用所施工組織設(shè)計(jì)
- 新聞媒體編輯與發(fā)布規(guī)范流程
評(píng)論
0/150
提交評(píng)論