



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)庫實用技術(shù)課外實踐報告項 目 名 稱:超市會員購物系統(tǒng)所 在 班 級:級本信管班小組成員:指導(dǎo)教師:起止時間:12月10日12月30日安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·項目基本信息項目名稱超市會員購物系統(tǒng)該系統(tǒng)可實現(xiàn)管理員對商品的信息進行增刪改查的功能,也可修改其密碼,管理員也可對會員進行項目簡介管理工作。對于會員,本系統(tǒng)可實現(xiàn)對商品的信息進行查詢以及商品的購買,也可修改自己的密碼。小組成員xx 負責數(shù)據(jù)庫的創(chuàng)建及數(shù)據(jù)的錄入。任務(wù)分工xx 負責系統(tǒng)設(shè)計和源代碼編寫。xx 負責系統(tǒng)調(diào)試、維護工作。xx 負責 word 、PPT 制作。2安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 &
2、#183;一、問題描述及分析1.1背景從 20 世紀 90 年代后期特別是近幾年,我國的超市產(chǎn)業(yè)飛速發(fā)展,其經(jīng)營模式更為復(fù)雜,舊的管理體制已經(jīng)無法適應(yīng)超市的發(fā)展,這就迫切的需要引進新的管理技術(shù)。超市的數(shù)據(jù)和業(yè)務(wù)越來越龐大,而計算機就是一種高效的管理系統(tǒng),這就需要我們把超市的管理與計算機結(jié)合起來,從而超市管理系統(tǒng)應(yīng)運而生。依靠現(xiàn)代化的計算機信息處理技術(shù)來管理超市,節(jié)省了大量的人力、物力,改善了員工的并且能夠快速反映出商品的進、銷、存等狀況和各種反饋信息分析,使管理人員快速對市場的變化做出相應(yīng)的決策,加快超市經(jīng)營管理效率。網(wǎng)絡(luò)購物也隨之越來越運用廣泛,本系統(tǒng)也借鑒了網(wǎng)絡(luò)購物的一些功能。1.2數(shù)據(jù)需
3、求(1) 會員的信息。(2) 商品的信息。(3) 管理員的信息。(4) 供貨商信息。1.3事務(wù)需求保證 PREFERENTIAL表的商品號、商品名、價格于購物表的一致性,另外保證member表與購物表里會員號的一致性。保證會員信息和購物表信息的持久性。1.4安全性體現(xiàn)在用戶和管理員登錄系統(tǒng)時,設(shè)置了權(quán)限,然后在數(shù)據(jù)庫中創(chuàng)建了備份。對數(shù)據(jù)庫中的數(shù)據(jù)進行了約束。二、解決方案 (或數(shù)據(jù)庫系統(tǒng)設(shè)計)2.1 E-R模型設(shè)計3安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·4安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·商品名商品號會員號價格地址電話訂單接收人姓名名稱地址時間賬號密碼n供貨商號查看n
4、管理mm聯(lián)系人供貨商電話信譽m電話地址管理管理員m管理mn會員n修改密碼修改m供應(yīng)密碼n商品號會員號購買姓名商品n積分要求商品名折扣后價種類折扣原價5安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·2.2數(shù)據(jù)字典ADMINISTRATOR(管理員登錄表)字段名數(shù)據(jù)類型主鍵是否為空其它約束賬號Varchar ( 10)是否UNIQUE密碼Varchar ( 20)否否MEMBER(會員登錄表)字段名數(shù)據(jù)類型主鍵是否為空其它約束用戶名Varchar ( 10)是否UNIQUE密碼Varchar ( 20)否否姓名Varchar ( 6)否否電話Varchar ( 11)否否積分Bigint否否備
5、注nvarchar ( 50)否是PREFERENTIAL(商品表)字段名數(shù)據(jù)類型主鍵是否為空其它約束商品號Varchar ( 20)是否Unique商品名Varchar ( 30)否否種類Varchar ( 10)否否原價Money否是折扣Float否否折扣后價Money否是積分要求Bigint否否購物表字段名數(shù)據(jù)類型主鍵是否為空其它約束會員號Varchar ( 10)否否商品號Varchar ( 20)否否商品名Varchar ( 30)否否價格Money否否地址Varchar ( 30)否是電話Varchar ( 11)否是接收人電話Varchar ( 10)否是時間Date否是供貨商表
6、6安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·字段名數(shù)據(jù)類型主鍵是否為空其它約束供貨商號Varchar ( 10)是否Unique名稱Varchar ( 20)否否聯(lián)系人Varchar ( 10)否否電話Varchar ( 11否是地址Varchar ( 20)否是信譽Varchar ( 10)否是備注Varchar ( 50)否是進貨表字段名數(shù)據(jù)類型主鍵是否為空其它約束供貨商號varchar ( 10)是否UNIQUE商品號varchar( 20)否否商品名varchar( 30)否否進貨數(shù)量Int否是2.3 系統(tǒng)數(shù)據(jù)流分析輸入信息自助查詢系輸出信息用戶用戶統(tǒng)庫文件管理員三、系統(tǒng)實現(xiàn)3
7、.1開發(fā)環(huán)境本系統(tǒng)開發(fā)是運用內(nèi)存為2G, 32 位操作系統(tǒng),處理器為Inter( R) Core( TM)i3-2310MCPU2.10GHz本.系統(tǒng)采用T-SQL 和 Microsoft Visual C#2008語言,可應(yīng)用于windows XP 、Windows 7.7安陽師范學院3.2系統(tǒng)流程圖會員登錄登錄成功是查看商品購買商品修改密碼數(shù)據(jù)庫實用技術(shù) 課外實踐 ·開始登陸界面管理員是管理員登錄否登錄成功是管理商品查看訂單管理會員管理供應(yīng)商結(jié)束3.3系統(tǒng)功能模塊及結(jié)構(gòu)描述現(xiàn)對系統(tǒng)各功能模塊進行詳細分解。1. 系統(tǒng)登錄模塊:該模塊用于管理員及用戶的登錄;2. 管理員管理模塊:管理
8、員可以通過該模塊對商品進行增刪改查、會員信息的管理以及對會員訂單的查詢;3. 會員查詢模塊:該模塊可以為會員提供商品折扣信息;4. 會員購買商品模塊 : 用戶可以通過該模塊進行商品選購;5. 修改密碼模塊 : 管理員及會員可以通過該模塊修改密碼;6. 管理供應(yīng)商模塊:管理員可以通過此系統(tǒng)管理供應(yīng)商。8安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·7. 進貨模塊:管理員可以通過此模塊按條件查詢商品的剩余量,進行合理的進貨。超市會員購物系統(tǒng)系管會理員統(tǒng)員管管管理理理登取管修增刪改加除修查會查購修理消進錄供優(yōu)優(yōu)優(yōu)改看員看買改登貨系應(yīng)惠惠惠密訂管商物密統(tǒng)錄商商商碼單理品品碼商品品品功能模塊圖3.4
9、系統(tǒng)調(diào)試系統(tǒng)的測試的主要任務(wù)是發(fā)現(xiàn)并排除在分析、設(shè)計、編程各階段中產(chǎn)生的各種類型的錯誤,以得到可使用的軟件系統(tǒng)。登錄模塊測試使用本系統(tǒng)時,先從登錄界面登錄,根據(jù)登陸身份的不同,可以登錄到達不同的界面,在商家界面的界面里有系統(tǒng)的功能模塊及模塊下的子模塊,直接輸入即可進入處理界面。管理員管理模塊測試9安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·信息處理模塊就是以添加、修改和刪除信息的功能為主,在信息界面中的文本框中輸入正確的信息,點擊修改就可以把數(shù)據(jù)庫中的信息更新,達到修改目的。點擊刪除按鈕就可以把該條信息刪除。點擊添加就可以把新信息添加到數(shù)據(jù)庫中。處理模塊能讓商家更快的修改優(yōu)惠項的信息,大
10、大減少了工作時間。該模塊還能進行會員管理,在信息界面對輸入正確的信息就能對會員基本信息進行查看。在文本框中修改會員信息,點擊修改就能達到修改的目的。此外,點擊查詢訂單選項能夠進入到會員訂單查詢界面,點擊查看按鈕,用戶訂單的所有信息就能夠清楚地看到,可以讓管理員及時地看到用戶訂單。會員查詢模塊測試在會員查詢設(shè)計界面里,直接點擊查詢?nèi)啃畔⑦x項即可看到所有折扣商品的信息,還可以分成不同方式的查詢,按類別查詢是對不同類型的商品進行查詢;點擊按折扣查詢時,可以看到相同折扣的商品有哪些;點擊按積分要求查詢,可以清楚的看到各種折扣商品的折扣對象。為了方便用戶的購買,在用戶查詢優(yōu)惠項后可以直接進行商品的購買
11、,方便買家的商品購買。進貨模塊測試在進貨界面中,點擊按庫存查看商品余量,管理員可以查看各個有可能需要進貨的商品,然后根據(jù)需要進行購買活動。四、使用說明本系統(tǒng)只適合管理員和會員兩個身份的人使用,管理員輸入賬號、密碼點擊登錄可進入管理員管理界面,增加商品時,管理員需要填入下面框內(nèi)的信息然后點擊增加商品按鈕即可添加商品。刪除商品時,管理員只需輸入要刪除商品的商品號即可。修改商品時,輸入要修改商品的商品號,然后在修改它的其它項即可。點擊刷新列表就可查詢所有的商品。點擊修改密碼,即可進入管理員修改密碼的界面, 在修改密碼時只需要輸入帳號, 然后輸入兩次修改后的密碼,點擊確認重置就可。在管理員管理界面點擊
12、管理會員按鈕,即可進入管理會員界面。在管理會員界面有查看、添加、修改、退出按鈕,產(chǎn)看按鈕用于查看會員的信息,添加按鈕用于添加新的會員,修改按鈕用于修改會員的基本信息,這兩個按鈕的用法和增加商品、修改商品按鈕的用法相似。在管理員管理界面,點擊查看訂單按鈕,即可進入查看訂單界面,其中的查看所有的按鈕用于查看所有人的訂單。若不想查看所有的訂單,可按照時間、地址條件進行查詢,當在地址框內(nèi)輸入地址, 然后再點擊查看, 即可看到在此地址的所有訂單, 在時間框內(nèi)輸入時間,再點擊查看,即可查看在此時間訂貨的信息。會員輸入會員號、密碼點擊登錄可進入會員查詢界面,在會員查詢設(shè)計界面里,直接點擊10安陽師范學院數(shù)據(jù)
13、庫實用技術(shù) 課外實踐 ·查詢?nèi)啃畔⑦x項即可看到所有折扣商品的信息,還可以分成不同方式的查詢,按類別查詢是對不同類型的商品進行查詢;點擊按折扣查詢時,可以看到相同折扣的商品有哪些;點擊按積分要求查詢,可以清楚的看到各種折扣商品的折扣對象。為了方便用戶的購買,在用戶查詢優(yōu)惠項后可以直接進行商品的購買,方便買家的商品購買。當在會員查詢界面點擊按鈕購買商品時,即可進入購買物品界面,再次界面會員可以根據(jù)自己的需求,填入您所想要的商品的商品號,然后輸入接收人地址,接收人電話、接收人姓名、日期然后點擊添加,您所選得商品就可加入到您的購物表中, 不需要輸入商品名和價格, 系統(tǒng)會根據(jù)您的商品號, 自
14、動的給您匹配好,如果您要選多種商品時,接收人地址,接收人電話、接收人姓名、日期只需要在選第一個商品時輸入即可。選完您所要的物品,點擊下面的查看按鈕,就可查看您的訂單,另外注明,在您選物品時, 最好點擊一下清除按鈕, 此按鈕的功能是清除您原來選的商品, 也可用于取消訂單。點擊總計按鈕,可查看您所選物品的總價格。在會員查看界面點擊修改密碼,即可進入會員修改密碼的界面,在修改密碼時只需要輸入會員號,然后輸入兩次修改后的密碼,點擊確認重置就可。點擊返回登錄界面即可進入最先的登錄界面。在管理進貨商界面,點擊查看供貨商信息就可查詢所有的供貨商信息,在增加供貨商時,需要先輸入下面框內(nèi)的信息,然后點擊增加供貨
15、商即可。刪除供貨商時,只需要輸入供貨商號即可。修改時,除了供貨商號不能修改,其余的都可先在框內(nèi)填入信息,然后點擊修改供應(yīng)商即可修改。在此界面點擊返回上一界面即可進入到管理員管理界面1. 點擊退出即可退出系統(tǒng)。在進貨界面中,點擊按庫存查看商品余量,管理員可以查看各個有可能需要進貨的商品,然后根據(jù)需要進行購買活動。五、問題及解決方法問題一:在登陸時密碼總是顯示出來?解決方法: 修改了 txtPwd 的 PasswordChar 屬性。如圖:。結(jié)果: 當管理員或者會員輸入密碼時,密碼不會顯示出來而是以* 的形式顯示, 保證了密碼的安全性。登陸時如下圖:11安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐
16、83;問題二 :當在寫代碼是,數(shù)據(jù)庫與c#連接語句要重復(fù)寫好多次?解決方法:新增了一個DBHelper類,類中寫了打開數(shù)據(jù)庫,連接數(shù)據(jù)庫,關(guān)閉數(shù)據(jù)庫的所有語句。代碼如下:namespace 超市會員購物系統(tǒng)1classDBHelperprivatestringconnStr =null ;privateSqlConnectionconnection;publicDBHelper( stringconnStr)this .connStr = connStr;connection =new SqlConnection(connStr);publicvoid DBopen()tryif(connec
17、tion.State= ConnectionState.Broken) / 如果連接對象的狀態(tài)時 Broken ,那么必須先關(guān)閉連接,才能去打開, 直接打開會出現(xiàn)異常connection.Close();connection.Open();catch ( Exceptionex)throw ex;publicvoid DBClose()this .connection.Close();publicstringSplExecuteScalar(stringsql)trythis .DBopen();SqlCommandcmd =new SqlCommand(sql,this .connectio
18、n);12安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·returncmd.ExecuteScalar().ToString();catch ( Exceptionex)throw ex;finallythis .DBClose();publicintSqlExecuteNonQuery(stringsql)trythis .DBopen();SqlCommandcmd =new SqlCommand(sql,this .connection);returncmd.ExecuteNonQuery();catch ( Exceptionex)throw ex;finallythis .DBC
19、lose();publicDataSet GetDataSet(stringsql)trythis .DBopen();DataSet ds =new DataSet (); / 創(chuàng)建 dataset 對象SqlDataAdaptersda = new SqlDataAdapter(sql,this .connection);/創(chuàng)建 Ssql 適配器sda.Fill(ds);returnds;catch ( Exceptionex)13安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·throw ex;finallythis .DBClose();結(jié)果:在每次要連接數(shù)據(jù)庫時只需要寫一句代碼就可
20、以,節(jié)約了大量的時間,也是代碼看著簡潔、易懂。 代碼是:DBHelper db = new DBHelper ( "server=.;initialcatalog=MARKET;integrated security=true" );問題三:在管理會員界面,當管理員增加新的會員的時候,會有密碼的設(shè)置,如果密碼是管理員隨便輸入的,這樣會不好管理會員的信息?解決方法:當添加新的會員時,我們默認了會員的密碼是123,積分是 0,因此在添加時就不用輸入會員的密碼和積分。默認會員密碼和積分的代碼是:textBox2.Text ="123" ; textBox4.T
21、ext ="0" ; 注: textBox2 是密碼框, textBox4 是積分框。結(jié)果:避免了管理員一次次的輸入密碼和積分,節(jié)省了時間,使工作效率得到了提高。輸入時如下圖:然后點擊添加按鈕即可。問題四:在修改密碼時,如果在讓用戶重新輸入一遍帳號和原密碼,好像是不需要的,因為只有自己登陸后才能修改自己的密碼,因此原密碼是不需要確認的。解決方法:在修改密碼界面只設(shè)計了三個輸入框,用戶名、新密碼、確認密碼,而且用戶名是通過窗體傳值來設(shè)計的,而且設(shè)計時用戶名框內(nèi)傳來的值是不能修改的,這樣就避免了會有人修改別人的密碼。窗體傳值的代碼如下:上一界面的代碼:stringtxtValu
22、e1 =this .label8.Text;修改密碼a =new 修改密碼 (txtValue1);a.Show();this .label8.Text = a.returnValue;14安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·在修改密碼界面的代碼:publicstringreturnValue;public修改密碼 ( stringtxtValue1)InitializeComponent();this .textBox1.Text = txtValue1;結(jié)果:用戶只需要填寫新密碼和確認密碼兩個框內(nèi)的值就可。問題五:如何體現(xiàn)sql 語言的靈活性、完整性和安全性?解決方法:創(chuàng)建了
23、兩個簡單的存儲過程。代碼如下:createprocedurecxgwbasselect*from 購物表createprocedurecxspasselect*from PREFERENTIAL并且在管理員查看商品時調(diào)用了存儲過程:stringsql ="execute cxsp"問題六:如何讓會員查詢方便?解決方法:在會員查詢界面設(shè)計了可以按照不同的方面進行查詢,有可以查看所有的商品,有按照類別進行查看,有按照積分進行查看,有按照折扣進行查看。結(jié)果:大大節(jié)省了會員的時間,使他們可以按照自己的需求按照不同的方面進行查看自己需要的商品。問題七:如何使會員在購買商品時方便?解決
24、方法:我們設(shè)計的是只要用戶輸入商品號,然后商品名和價格就不用自己輸入了,在這里我們是創(chuàng)建了個視圖而且在輸入接收人姓名、接收人電話、接收人地址、日期給了會員只需要在第一次購買的時候輸入即可。創(chuàng)建視圖的代碼是:createviewdc_spasselect商品號 , 商品名 , 折扣后價fromPREFERENTIAL在 c#用時的代碼是:sql ="select商品名 , 折扣后價 from dc_sp where商品號 ='"+"'"DataTable dt = db.GetDataSet(sql).Tables0;textBox2.Te
25、xt = dt.Rows00.ToString();textBox3.Text = dt.Rows01.ToString();(注: textBox2是商品名書寫框,textBox3是價格的書寫框)15安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·問題八:計算總計時怎么使會員只計算這次的點餐?解決方法:在購物界面增加了一個清除界面,用于用戶清除自己原來的頂?shù)奈锲?,并且給與提醒。清除的代碼:stringsql ="delete from購物表 where會員號 ='"+ textBox4.Text +"'"問題九:如何使購物表的商品號改
26、變時preferential的商品號也改變?解決方法:定義了一個觸發(fā)器,觸發(fā)器代碼是:createtriggerpreferential_updateon preferentialafter updateasbegindeclareold_sph varchar ( 10), new_sphvarchar ( 10)selectold_sph=商品號 from deletedselectnew_sph=商品號 from insertedupdate購物表 set 商品號 =new_sphwhere商品號 =old_sphend問題十:當會員購買完商品后,如何是preferential表的庫存量
27、也減少?解決方法:在sql 中定義了個當購物表的份數(shù)增加后,preferential表的庫存量相應(yīng)的減少。代碼是:use MARKETgocreatetriggergwb_preon 購物表 afterinsertasbegindeclaresph varchar ( 20), spmvarchar ( 30)declarefs intselectsph=商品號 , spm=商品名 from insertedselectfs=份數(shù) from 購物表 where 商品號 =sphupdate PREFERENTIALset 庫存 =( 庫存 - fs) where 商品號 =sph print
28、' 修改成功 'end問題十一:根據(jù)老師的建議,我們又增加了進貨界面,管理供貨商界面;在數(shù)據(jù)庫中建了供貨商表和進貨表。進貨界面圖:16安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·在此界面為了使管理員更好的進行進貨活動,我們增加了按照庫存查看商品余量的按鈕,管理員可以按照余量進行進貨。而且當輸入進貨數(shù)量是有在sql 中添加了個觸發(fā)器, 使 preferential表中相應(yīng)的庫存也增加:代碼如下:use MARKETgocreatetriggerjhb_preon 進貨表 afterinsertasbegindeclaresph varchar ( 20), spmvarch
29、ar ( 30)declarejhslintselectsph=商品號 , spm=商品名 from insertedselectjhsl =進貨數(shù)量 from 進貨表 where 商品號 =sphupdatePREFERENTIALset 庫存 =( 庫存 +jhsl )where 商品號 =sphprint '修改成功 'end管理供貨商界面圖:17安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·進貨表設(shè)計:供貨商表設(shè)計:。六、課外實踐總結(jié)回顧該系統(tǒng)從選題,到設(shè)計、編碼實現(xiàn)、測試等,論文的撰寫,這系列連貫的過程,感想頗多,收獲也很多。大致的總結(jié)幾點,如下:1設(shè)計開發(fā)一個軟
30、件,首先要了解所涉及到行業(yè)的現(xiàn)狀,一定要想辦法進行行業(yè)調(diào)研,從不同途徑獲取該行業(yè)的專業(yè)知識。合理安排系統(tǒng)設(shè)計開發(fā)時間,進行實際開發(fā)會發(fā)現(xiàn)需求分析與系統(tǒng)設(shè)計占主要的時間,如果前面的工作做好了,編碼實現(xiàn)占用的時間很短。所以我們要借助軟件工程的思想-對軟件開發(fā)過程進行控制。18安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·2. 在開發(fā)一個系統(tǒng)時,前期的分析準備工作非常的重要。對于系統(tǒng)的需求要明確,這樣才能做到有的放矢。特別是對于系統(tǒng)中數(shù)據(jù)的存儲和重要算法的設(shè)計,設(shè)計的不好會出現(xiàn)大量的冗余,不僅浪費存儲空間,還影響查詢效率。3.在設(shè)計的初期,對一個功能模塊的設(shè)計,要想出兩種或兩種以上方案,這樣可以
31、進行比較,從而獲得更佳的設(shè)計方案,設(shè)計開發(fā)過程中一定要吸取經(jīng)驗教訓,避免返工。尤其是一些重要算法或功能。在對具體實現(xiàn)功能模塊進行編程時,要養(yǎng)成良好的加注釋的習慣,這樣的話不僅能理清思路,而且可以為以后的調(diào)試程序帶來很大的方便。4. 懂得充分利用網(wǎng)絡(luò)資源。5.后期的晚上也是很重要的,在每個系統(tǒng)都存在著些許缺點,但重要的是我們能發(fā)現(xiàn)并對它們進行改進,這樣才能一步步地編寫一個較完整的系統(tǒng)七、源代碼7.1 sql server 2008的源代碼:- 多表查詢以及模糊查詢select購物表 . 會員號 , 購物表 . 商品號 , 購物表 . 商品名 , PREFERENTIAL.種類fromPREFER
32、ENTIAL, MEMBER, 購物表where 購物表 . 會員號 =MEMBER.會員號and 購物表 . 商品號like'0018%'go- 插入會員信息insertintoMEMBERvalues ( '120123' , '123' , ' 張安 ' , '1235434' , '0' ,null)go- 修改會員信息updateMEMBERset積分 ='100'where 會員號 ='120123'go- 刪除會員信息deletefrommember w
33、here 會員號 ='120123'go- 從表 PREFERENTIAL查詢商品號 , 商品名 , 折扣后價 ( 視圖 ) create view dc_spasselect 商品號 , 商品名 , 折扣后價fromPREFERENTIAL- 存儲過程createprocedurecxgwbasselect*from購物表19安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·- 存儲過程createprocedurecxspasselect*fromPREFERENTIAL- 備份use mastergoexec sp_addumpdevice 'disk',
34、 'sql', 'f:sql.bak'backup databasemarkettosqlwithnoinit- 修改 preferential 表的商品名購物表的商品名也會改變觸發(fā)器createtriggerpreferential_updateon preferentialafterupdateasbegindeclareold_spm varchar ( 10), new_spmvarchar ( 10)selectold_spm=商品名fromdeletedselectnew_spm=商品名frominsertedupdate購物表set商品名 =new
35、_spmwhere 商品名 =old_spmend- 創(chuàng)建觸發(fā)器 , 當向購物表中插入一個商品時, 將 PREFERENTIAL 中該商品的分數(shù)表相應(yīng)的減少use MARKETgocreatetriggergwb_preon 購物表 afterinsertasbegindeclaresphvarchar( 20 ), spm varchar(30)declarefsintselectsph =商品號 , spm= 商品名 frominsertedselectfs = 份數(shù) from購物表 where商品號 = sphupdatePREFERENTIALset 庫存 =( 庫存 - fs )wh
36、ere 商品號 =sphprint' 修改成功 'end- 創(chuàng)建觸發(fā)器 , 當向進貨表中插入一個商品時, 將 PREFERENTIAL 中該商品的分數(shù)表相應(yīng)的增加useMARKETgocreatetriggerjhb_preon進貨表afterinsertasbegindeclaresphvarchar( 20 ), spm varchar( 30 )20安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·declarejhslintselectsph =商品號 , spm= 商品名frominsertedselectjhsl= 進貨數(shù)量from進貨表where商品號 = sph
37、updatePREFERENTIALset庫存 =( 庫存 +jhsl)where商品號 = sphprint' 修改成功 'end7.2 Microsoft Visual Studio 2008 C#源代碼:登錄界面圖:登錄界面源代碼:publicpartialclassenter:FormDBHelper db =new DBHelper ( "server=.;initial catalog=MARKET;integrated security=true");publicenter()InitializeComponent();21安陽師范學院數(shù)據(jù)庫實
38、用技術(shù) 課外實踐 ·privatevoid btnLogin_Click(objectsender,EventArgs e)if(radAdministrator.Checked =true )if(txtID.Text ="" | txtPwd.Text ="" )MessageBox.Show( " 賬號、密碼不能為空" );elsestringstringtrystringsql= "Select* From ADMINISTRATORWhere 賬號 ='"+ userName + &qu
39、ot;'and密碼 ='"+ passWord +"'" ;intcount =int .Parse(db.SplExecuteScalar(sql);if(count > 0)stringtxtValue =this .txtID.Text;管理員界面f7 =new 管理員界面 (txtValue);f7.Show();this .txtID.Text = f7.returnValue;elseMessageBox.Show( " 用戶名或密碼有誤,請重試" );catch ( Exceptionex)Messa
40、geBox.Show( " 出現(xiàn)錯誤: " + ex.Message);if(radMember.Checked =true )if(txtID.Text ="" | txtPwd.Text ="" )MessageBox.Show( " 會員號、密碼不能為空" );22安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·elsestringstringtrystringsql ="Select * From MEMBER Where會員號 ='"+ userName +"
41、9; and密碼='"+ passWord +"'"intcount =int .Parse(db.SplExecuteScalar(sql);if(count > 0)stringtxtValue2 =this .txtID.Text;stringtxtValue1 =this .txtID.Text;購買物品界面b =new 購買物品界面 (txtValue1);會員查詢界面a =new 會員查詢界面 (txtValue2);a.Show();this .txtID.Text = a.returnValue2;this .txtID.Te
42、xt = b.returnValue4;elseMessageBox.Show( " 用戶名或密碼有誤,請重試" );catch ( Exceptionex)MessageBox.Show( " 出現(xiàn)錯誤: " + ex.Message);if(radAdministrator.Checked =false&& radMember.Checked =false )MessageBox.Show( " 請選擇身份驗證" );privatevoid btnExit_Click(objectsender,EventArgs e)this .Close();23安陽師范學院數(shù)據(jù)庫實用技術(shù) 課外實踐 ·管理員管理界面圖:管理員管理界面代碼:publicpartialclass管理員管理界面1 :FormDBHelper db =new DBHelper ( "server=.;initial catalog=MARKET;integrated security=true");public管理員管理界面1()InitializeComponent();publicstringreturnVa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療領(lǐng)域中基于區(qū)塊鏈的信任體系構(gòu)建
- 區(qū)塊鏈賦能金融安全與融資共舞
- Axure RP 互聯(lián)網(wǎng)產(chǎn)品原型設(shè)計課件 第4章 使用元件和元件庫
- 以人工智能為核心用區(qū)快鏈技術(shù)的去中心化商業(yè)解決方案
- 代辦會議合同范例
- 光纜安裝維修合同范例
- 企業(yè)內(nèi)部審計的數(shù)字化轉(zhuǎn)型基于區(qū)塊鏈技術(shù)的探索與實踐
- 創(chuàng)新醫(yī)療健康數(shù)據(jù)管理模式與隱私保護實踐
- 小區(qū)垃圾問題
- 會計教育培訓合同范例
- 2024年延安通和電業(yè)有限責任公司招聘考試真題
- 2025年中國礦山支護設(shè)備行業(yè)市場規(guī)模及投資前景預(yù)測分析報告
- 鋰電池、新能源汽車火災(zāi)事故滅火救援處置
- 新形勢下如何抓好“兩個經(jīng)常性”工作
- 近三年小升初試卷及答案
- 渠道分銷合同協(xié)議樣本
- 【專項訓練】相似三角形五大模型+訓練(共45題)(原卷版+解析)
- 2024年共青團入團積極分子團校結(jié)業(yè)考試試題庫及答案
- 21ZJ111 變形縫建筑構(gòu)造
- 《戶型設(shè)計大全》PPT課件.ppt
- 植物的命名與分類階層系統(tǒng)PPT課件
評論
0/150
提交評論