华北电力大学实验报告||实验名称超市管理系统课程名称数据库原理课程设计||专业班级:信安1301学生姓名:金祥学号:201309040107成绩:指导教师:崔克彬实验日期:2015.07.101.系统功能图2.系统详细描述与E-R设计一个会员可以购买多种商品,每种商品可以被多个会员购买。每种商品有一个唯一的编号作为标志。管理员对商品信息、管理员信息、会员信息和商品类别具有增、删、改、查的权限。根据以上描述得到的实体及属性如下:A.实体:会员:会员编号,密码,性别,出生日期商品:商品编号,商品名称,商品类型,数量,生产公司,产地,描述管理员:管理员编号,姓名,密码商品类型:类型编号,名称B.实体之间的联系如下:会员与商品之间的关系:购买(会员编号,商品编号,购买日期,退货日期)管理员与管理员间的联系:管理管理员与商品间的联系:管理管理员与会员间的联系:管理管理员与商品类型间的联系:管理C.说明:下划线文字为主码;为了避免冲突发生,所有属性(除退货日期及商品描述外)均非空。D.根据以上分析设计出实体及其属性图如下:E.实体及其联系图3.系统逻辑结构设计A、根据以上E-R图得到系统关系模型如下:会员(会员编号,密码,性别,出生日期)商品(商品编号,商品名称,商品类型,数量,生产公司,产地,描述)管理员(管理员编号,姓名,密码)商品类型(类型编号,名称)购买(会员编号,商品编号,购买日期,退货日期)说明:以上关系中,下划线部分为对应关系的主码,加黑部分为外码,且所有属性(除退货日期及商品描述外)均非空。B、使用SQL语言创建各表会员表:CREATETABLETable_VIP(Vnumvarchar(50)primarykey,Vnamevarchar(50),Vpwdvarchar(50),Vsexvarchar(4)check(Vsexin('男','女')),Vbirthdatetime)商品表:CREATETABLETable_Goods(Gnumvarchar(50)primarykey,Gnamevarchar(50),Gcountvarchar(50),Gcompanyvarchar(50),Gplacevarchar(50),Gdatedatetime,Gdescribvarchar(50),foreignkey(Gtype)referencesTable_Type(Typenum)ondeletecascadeonupdatecascade)管理员表:CREATETABLETable_Admin(Anumvarchar(50)primarykey,Anamevarchar(50),Apwdvarchar(50))购买表:CREATETABLETable_Shopping(idintidentity(1,1),Vnumvarchar(50),Gnumvarchar(50),Stimedatetime,Rtimedatetime,primarykey(Vnum,Gnum),foreignkey(Vnum)referencesTable_VIP(Vnum)ondeletecascadeonupdatecascade,foreignkey(Gnum)referencesTable_Goods(Gnum)ondeletecascadeonupdatecascade)商品类型表:CREATETABLETable_Type(Typenumvarchar(50)primarykey,Typenamevarchar(50))C、各表的截图图1.管理员表图2.商品类型表图3.商品表图4.购物记录表图5.会员表4、在ASP.NET页面中连接并操作数据库,连接字符串如下:publicConDB(){conStr=@Server=USER-PC\赟赟;Database=Library;IntegratedSecurity=True;;}5、界面设计与运行结果根据系统所需实现的功能及系统的用户类型不同,将界面设计如下:A.登录界面B.会员主界面C.会员商品查询、购买D.管理员主界面该模块实现管理员信息、商品信息、会员信息、商品类型等基本管理和退货等操作。E.管理员管理注:会员管理、商品管理、商品类型管理界面都和管理员管理的界面相同,都实现了增、删、改、查的功能。由于管理员类的主键是Anum,所以当更新的管理员信息编号与已存在的编号相同,会提示错误信息,如下图所示:F.管理员退货界面三、课程设计(综合实验)总结或结论本次实验是我们学习数据库原理后,为了培养我们更好的解决问题和实际动手能力而设置的实践环节。数据库应用系统开发的过程一般包括可行性研究、需求分析、系统设计、程序编码、程序调试和系统维护六个阶段。本系统在需求分析和程序健全性方面均存在一些问题,为了解决这些不完善之处,需要在今后的进一步学习中,逐步深入,不断积累经验,不但提高。本次课程设计我们所做的系统是超市管理系统,是用winsows窗体编写的,数据库开发环境是SQLServer2008,使用的语言是C#。超市管理系统操作简单,使用方便,条理清晰,界面友好。本次实验注重的是数据库的设计,所以在设计E—R图、创建各表花费了更多的时间,确定了系统的需求之后再设计,系统比较简单,虽然在实现的过程中也遇到了很多问题,但是通过和同组成员及同学、老师的及时交流完成了实验。同时,本次实验也提高了自己的团队合作能力,提高了自己与他人的交流合作能力.附录A.部分代码管理员主界面:publicpartialclassAdminManage:Form{GoodsBLLbb=newGoodsBLL();AdminBLLab=newAdminBLL();publicAdminManage(){InitializeComponent();bt_TopManage.Enabled=false;}//按商品编号查询购物记录privatevoidbt_sure_Click(objectsender,EventArgse){stringnum=tb_num.Text.Trim();DataTabledt=bb.SearchShoppingByGnum(num);if(dt.Rows.Count0){dataGridView1.DataSource=dt;bt_TopManage.Enabled=true;tb_num.Enabled=false;}else{MessageBox.Show(未找到相应编号的商品,警告,MessageBoxButtons.OK);}}privatevoidtb_AddAdmin_Click(objectsender,EventArgse){//添加管理员页面Formadl=newAddAdmin();//this.Hide();adl.Show();}privatevoidbt_delAdmin_Click(objectsender,EventArgse){//删除管理员页面Formadl=newDelAdmin();this.Hide();adl.Show();}privatevoidbt_updateAdmin_Click(objectsender,EventArgse){//修改管理员页面Formadl=newUpdateAdmin();this.Hide();adl.Show();}privatevoidbt_AddGoods_Click(objectsender,EventArgse){//添加商品信息Formadl=newAddGoods();//this.Hide();adl.Show();}privatevoidbt_DelGoods_Click(objectsender,EventArgse){//删除商品信息Formadl=newDelGoods();this.Hide();adl.Show();}privatevoidbt_UpdateGoods_Click(objectsender,EventArgse){//修改商品信息Formadl=newUpdateGoods();this.Hide();adl.Show();}privatevoidbt_AddVIP_Click(objectsender,EventArgse){//添加会员信息Formadl=newAddVIP();//this.Hide();adl.Show();}privatevoidbt_DelVIP_Click(objectsender,EventArgse){//删除会员信息Formadl=newDelVIP();this.Hide();adl.Show();}privatevoidbt_type_Click(objectsender,EventArgse){Formadl=newTypeManage();//this.Hide();adl.Show();}privatevoidbt_TopManage_Click(objectsender,EventArgse){//退货管理stringnum=tb_num.Text.Trim();boolb=ab.DeleteByGnum(num);if(b){MessageBox.Show(退货成功!,提示,MessageBoxButtons.OK);dataGridView1.DataSource=null;tb_num.Enabled=true;tb_num.Text=;}else{MessageBox.Show(退货未成功!,提示,MessageBoxButtons.OK);}}privatevoidbt_AddVIP_Click_1(objectsender,EventArgse){Formadl=newAddVIP();//this.Hide();adl.Show();}privatevoidbt_exit_Click(objectsender,EventArgse){Application.Exit();}privatevoidllb_login_LinkClicked(objectsender,LinkLabelLinkClickedEventArgse){Formadl=newAdminLogin();this.Hide();adl.Show();}protectedoverridevoidOnClosing(CancelEventArgse){//退出提示if(MessageBox.Show(this,确认退出?,提示信息:,MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes){e.Cancel=false;}else{e.Cancel=true;}}privatevoidbt_return_Click(objectsender,EventArgse){tb_num.Enabled=true;tb_num.Text=;dataGridView1.DataSource=null;}}会员主界面:publicpartialclassVIPManage:Form{GoodsBLLgb=newGoodsBLL();VIPBLLvb=newVIPBLL();privatestringvNum;privatestringvPsw;publicVIPManage(){InitializeComponent();comboBox1.SelectedIndex=0;}publicVIPManage(stringnum,stringpsw){InitializeComponent();comboBox1.SelectedIndex=0;vNum=num;vPsw=psw;dataGridView1.AllowUserToResizeColumns=false;dataGridView1.AllowUserToResizeRows=false;dataGridVie