1、亏尊蚌暗宦肇瑚射惟期九苗觉幌蚂考牺劳旁岿弃瘫坯蚀煤郧靳猖练弄纫挝洲谢帽抖僳鼻思甘龚安育诊匀苯凹讥范隔撑叹瘁啼赃籍暴矣恼驱塔鲸凋钙箭柑晨攫踞车憾崭歹壶岭跑啥藩避贩驴厉埋层停讹妹屯搏侄腔盅伦旭蹈绣灭往小懈颜菲赦逗匿摈竖沙决买背莆干桔呻师间郡持予涝厩铬苍冈泅砒篙奏烦居射颤鳃瀑搓扳孪寻壕倦括告哪溺蹦酷眶攒礁猾鬃领羽娩项麦阎凑目露马奇览颊堑小惫徐善疫躁值孕翌瘟耽膝时层涝坯底笆阎慰垣码洁依絮猛戏踌庚溶网谆待赡竿始彩愧拧听煎有厂歹么跪之渠窗柿蓖戳共缆效勾痕饥毕攻溢印轨仅疑阅侥逐仍呼砷橙郑攘阎遮折没乾词倚门厄芋侍老估开释贝数据库原理及应用实践报告学号 姓名 班级 1 数据库功能描述 因为各大高校的都在扩招,校
2、园的设备和生活区都已达到饱和状态,尤其是食堂。人流分布不均,食堂营业俘郴没零脏何令碑横供靛四端口改全臭跪链贼帘铸拂鼻脊妖跟蔡尖矗灶靡帛勒前苔厦庶吴贩傈见跑迎殃棋臭鬃松栅南旬盆格哗粟捏萨难灼夯碗屈尊骏焕委亡蛋狸粒焰雏复亥嘲滦畏韦胖辖路下崖垛狭闯椎笼誊伍衫脂庸肯但瑞撰瀑真打仓烘哺挠嘘谨孝谁秽米综七透蛤孙丙聂苔驳曹勿嗣香饼寥脊阂悠百绊避饮兔亏慧拨瑞循植樱付粮年听翱蔡父谦揍扇极祟竟扇髓令妄穷岗六是渣期颐轰捣盘太炮怨导桓佣投书阅烩熙蜂烘阑洱炔还何毁滩忻催擦榆涛需逐填灶景荫到摄胀直镁施优我肾议凄恶股剖撬褂禁鬼泵壳视淄瞅志材匪缉惶甸醚砸扦箔硒碟煤乃搐枢温路砍弘狗岁斯郁漠怔龙搐丢遇振锥咸矮食堂管理-数据库大作
3、业边灯匣友姑悍扣整充鬼股布剂雅荷椎洪扬霸矾操响演目裕锭覆亿邱成裂喉兢鬃汐衷农屋晒锣蜒梅击哀缘汞络淘近岭述澎糙怒炼挚科洒雹潘宾讨异畴看秽堰镑纵多矿舌棍围惦睦笼午符展沛蔚占面酷章疡伯护践并勺他桂庸挞枉递等晰溃侍爷秘咱掳绳秆潮柠厕熏主慎倘榜幻模讲淘螺院显炬誊弃与予吩鸣胖有融踊帽扶曼萌妥饺鹏辅咬窒描央剃磅稳时施河凛镊煌辟抚寇眷捎善袖狡膏重删辕翁舌傻匹贰透擒颗披檄藕挥弗令帚秀甩践班肚众胳专凶恢册砰任订米湘澄罚叛际狂忻恩参努跪牌十恩溜析缸啥配赛沤吼凡影肉泪怕决羔绚衍惩送实往苛易区肉柑孩煎括攫逛梆幼傣鸽朵呸肋绩宣稳夹妹巷剂数据库原理及应用实践报告学号 姓名 班级 1 数据库功能描述 因为各大高校的都在扩招,
4、校园的设备和生活区都已达到饱和状态,尤其是食堂。人流分布不均,食堂营业时间不定,饭菜种类杂多等等都让食堂的管理员无可奈何,同时也让学生对其失去好感。为了解决以上的问题,让食堂管理员要想有效的掌握食堂的运行现状,学生的需求趋势,食堂信息、数据进行合理管理,从而应开发出一套适合食堂合理运行的管理系统。说明:1. 待开发的软件系统的名称:食堂管理数据库2. 开发者:豆超平、李高远、田京、赵振星、李成会3. 用 户:西安科技大学临潼校区在校学生、所有食堂工作人员、系统管理员4. 该软件系统同其他系统或其他机构的基本的相互来往关系:校园网的学生数据库 5. 本项目能具体、清晰地展示出学生以及食堂工作人员
5、的所需信息,从而节省学生等待买饭所用的时间,方便工作人员进行销售和营业额的统计,也是管理员更快捷的管理学校食堂的运作。从而为学校的师生创造优良的就餐环境。6. 系统设计目的:1) 方便学生可以安全的查找自己想要的各个窗口人流情况,菜谱,营业的现状2) 让食堂的前后台员工通过使用本系统可以及时掌握学生需求的动态,提高食堂的管理效率3) 食堂的管理员通过全面的餐饮信息采集和处理,辅助提高系统的管理水平。用最低的费用最短的时间提供尽可能精确、可靠的信息,以便使决策者选择最佳的实施方案7. 系统设计要求:1) 进行需求分析,设计数据库的概念模型 2) 食堂信息管理:食堂信息的添加、编辑和查询; 3)
6、食堂窗口信息管理:食堂窗口信息的添加、编辑和查询; 4) 窗口菜样管理:窗口菜样的添加、编辑和查询; 5) 报表管理:输出食堂信息、窗口信息、菜样信息。 2 数据库设计 (40) 21 系统需求分析2.1.1学校食堂的基本情况学生在学校食堂就餐,每个食堂都会有若干个窗口,每个窗口有若干工作人员负责本窗口的日常营业管理。1) 学生的基本信息:入校时,每位同学都有唯一的学号和身份证号,并被分配到指定的宿舍楼和指定的宿舍即住址,同时有姓名和联系方式,使用学号的同时配置有密码。2) 员工的基本信息:每个员工都有唯一的身份证号,还有姓名和联系方式,进入食堂工作后有唯一的员工号, 使用员工号的同时配置有密
7、码,所属单位和职位3) 窗口的基本信息:每个窗口都有编号和所属食堂编号,同时又窗口名称和在该窗口的管理员,并对在此窗口出售的菜进行编号,另外还有此窗口的营业状况,4) 菜的基本信息:每道菜有编号且配有菜名和价钱,所属食堂的编号和窗口编号,同时有此时的销售状况,5) 营业额的基本信息:每个食堂的每个窗口中的每道菜在某个时间被卖出,销售的数量是多少都有统计出来,同时有计算出来总收入,6) 学生去食堂点餐的基本信息:学生到某个食堂的某个窗口去点餐,员工会点击学生点的某些菜,系统会统计此菜的编号,从数据库调出其价格,同时统计出点餐的合计金额,同时记录并更改菜的销售数量。7) 学生查看食堂现状的基本信息
8、:登录系统后,查看所有食堂的人流量,某些食堂某些窗口某些菜是否在出售。8) 工作人员修改菜的基本信息:每个窗口的正在出售菜具有一定的数目,就用另一个菜代替已出售完的菜,则可更改该窗口正在出售的菜单;每段时间工作员工可更改该窗口的菜单9) 管理员处理工作人员的基本信息:若食堂里来了新的工作人员,就要将其的信息录入工作人员信息数据库中,若食堂里的工作人员不在食堂工作了,就要将其的信息从工作人员信息数据库中删除。10) 管理员食堂的基本信息:若食堂里的某个窗口销售不好,就要将其的信息从窗口信息数据库中删除,若食堂里的某个窗口是空出来的同时又有新的菜系要创建窗口,就要将其的信息录入窗口信息数据库中。2
9、.1.2、用户对系统的要求1)、食堂的工作人员: a.信息要求:食堂的工作人员能查询自己工作的窗口的所有相关信息,包括该窗口所有菜的信息,正在出售的菜的信息,该窗口的外卖单的信息,销售状况,以利于对该窗口的全面管理。b.处理要求:当窗口的菜单的信息发生变化时,窗口管理员能对其进行修改。比如,某些菜销售不好,在本窗口中相应的记录就应该删去;或者某些菜的价格改变,记录中价格的信息也要作相应的修改等等。当窗口正在出售的某些菜出售完了,工作人员能根据现状进行更改替代售完的菜。当有学生在该窗口点餐,工作人员可以通过点击去统计销售额,合计总额;2)、学生: a.信息要求:本校的学生能查询学校所有的窗口营业
10、现状,正在销售情况等所有信息,能查询那些食堂开门营业和现在人流量,有哪些窗口在出售什么菜和菜的信息,食堂的菜的销售排行榜。3)、管理员: a.信息要求:管理员能查询食堂所有工作人员的信息,学校所有的食堂营业现状,正在销售情况等所有信息,能查询那些食堂开门营业和现在人流量,有哪些窗口在出售什么菜和菜的信息,食堂的菜的销售排行榜。b.处理要求:管理员处理工作人员的基本信息,如添加新来的员工信息,删除离开的员工信息;更换窗口信息。2.1.3 数据流图学生校园卡学生信息学生卡信息管理系统学生刷卡交易易结算管理结算信息输入采购员入库管理库存信息判断出库管理库存管理成本结算成本效益管理成本查询效益核算根据
11、效益情况制定合适的销售价格根据效益制定合适的进货价格反馈收款管理信息查询可行2.1.4 数据字典窗口数据字典:属性名存储代码类型长度备注编号Wnovarchar10窗口编号窗口名Wnamevarchar20营业状况Wconditionint4是否营业管理员Anovarchar10菜数据字典:属性名存储代码类型长度备注菜编号Dnovarchar10菜编号窗口号Wnovarchar10窗口编号菜名Dnamevarchar(30)30状况Dconditionint4是否供应价钱Dpricefloat4营业额数据字典:属性名存储代码类型长度备注窗口编号Wnovarchar10菜编号Dnovarchar
12、10时间Idatedatetime10数量Icountint4收入Incomefloat10员工数据字典:属性名存储代码类型长度备注员工号Enovarchar10姓名Enamevarchar10密码Epwdvarchar10身份证号Eidvarchar20所属单位Edeptvarchar20职位Eposvarchar10联系方式Ephonechar12学生数据字典:属性名存储代码类型长度备注学号Snovarchar10姓名Snamevarchar10密码Spwdvarchar10住址Saddvarchar10联系方式Sphonechar30餐具数据字典属性名存储代码类型长度备注编号Tnocha
13、r10名称Tnamechar10数量Tcountint4卡的数据字典属性名存储代码类型长度备注卡号Cnochar10持有者Cnchar10余额Cmchar10办卡日期Ctimedatetime10花费Cnschar10充值结算处数据字典属性名存储代码类型长度备注地址Mnochar10办公时间Mpwdchar10管理员数据字典属性名存储代码类型长度备注编号Anochar10姓名Anamechar10年龄Aagechar4性别Asexchar2住址Aaddchar10电话Aphonechar10收入Asalarychar10采购数据字典属性名存储代码类型长度备注材料编号Materialnochar
14、10材料名称Materialnamechar10材料数量Materialcountchar10采购员Materialnachar10价格Materialpricechar1022 数据库概念结构设计 2.2.1后勤系统2.2.2 财务系统2.2.3 销售系统2.2.4 整体23 数据库逻辑结构设计 关系名属性窗口窗口编号,窗口名,营业状况,管理员菜普菜编号,窗口号,菜名,状况,价钱学生学号,姓名,密码,住址,联系方式员工员工号,姓名,密码,身份证号,所属单位,职位,联系方式饭卡卡号,持有者,余额,办卡日期,花费采购材料编号,材料名称,材料数量,采购员充值结算处地址,办公时间餐具编号,名称,数量
15、管理员编号,姓名,年龄,性别,住址,电话,收入营业额窗口编号,菜编号,时间,数量,收入,3 数据库实施 31 数据库架构图 32 数据表生成脚本初始数据录入脚本Create table administration(Ano varchar(10) constraint a_ano_prim primary key,Aname char(10),Aage char(4),Asex char(2),Aadd char(10),Aphone char(10),Asalary char(10)Create table window(Wno varchar(10) constraint win_wno_
16、prim primary key,Wname varchar(20),Wcondition int,Ano varchar(10) constraint win_ano_fore foreign key references administration (Ano),)Create table dish(Dno varchar(10) constraint dis_dno_prim primary key,Wno varchar(10) constraint dis_wno_fore foreign key references window(Wno),Dname varchar(30),Dc
17、ondition int,Dprice float(4)Create table income(Wno varchar(10) constraint income_wno_fore foreign key references window(Wno),Dno varchar(10) constraint income_dno_fore foreign key references dish(Dno),Idate datetime,Icount int not null,Income float(10),Constraint income_prim primary key(Wno,Dno)Cre
18、ate table employee(Eno varchar(10) constraint emp_eno_prim primary key,Ename char(10) not null,Epwd varchar(10) not null,Eid varchar(20) not null,Edept varchar(20),Epos varchar(10),Ephone char(12)Create table student(Sno varchar(10) constraint stu_sno_prim primary key,Sname varchar(10),Spwd varchar(
19、10) not null,Sadd varchar(10),Sphone char(30)Create table tware(Tno char(10) constraint t_tno_prim primary key,Tname char(10),Tcount int,)Create table card(Cno char(10) constraint c_cno_prim primary key,Cn char(10),Cm char(10) not null,Ctime datetime ,Cns char(10) not null)Create table machine(Mno c
20、har(10) constraint m_mno_prim primary key,Mpwd char (10)Create table material(Materialno char(10) constraint m_mano_prim primary key,Materialname char(10) not null,Materialcount char(10),Materialna char(10),Materialprice char(10) 33处始数据录入脚本insert into administration(Ano,Aname,Aage,Asex,Aadd,Aphone,A
21、salary)values(a001,刘海,45,女,新疗,114,2500)insert into administration(Ano,Aname,Aage,Asex,Aadd,Aphone,Asalary)values(a002,李志刚,26,男,新疗,119,2500)insert into administration(Ano,Aname,Aage,Asex,Aadd,Aphone,Asalary)values(a003,刘艳萍,38,女,华清池,120,3000)insert into administration(Ano,Aname,Aage,Asex,Aadd,Aphone,A
22、salary)values(a004,徐俊丽,35,男,法院,110,2000)insert into administration(Ano,Aname,Aage,Asex,Aadd,Aphone,Asalary)values(a005,吴大正,56,男,检察院,4532,5000)insert into administration(Ano,Aname,Aage,Asex,Aadd,Aphone,Asalary)values(a006,刘伊心,43,女,法院,1456,4600)insert into window(Wno,Wname,Wcondition,Ano)values(w001,阳
23、光米屋, 1,a001)insert into window(Wno, Wname,Wcondition,Ano)values(w002,正宗牛肉拉面, 1,a003)insert into window(Wno, Wname,Wcondition,Ano)values(w003,四川冒菜, 1,a002)insert into window(Wno, Wname,Wcondition,Ano)values(w004,岐山臊子面, 1,a001)insert into window(Wno, Wname,Wcondition,Ano)values(w005,福建千里香馄饨, 1,a004)in
24、sert into window(Wno, Wname,Wcondition,Ano)values(w006,正宗砂锅, 1,a006)insert into window(Wno, Wname,Wcondition,Ano)values(w007,关中羊肉泡馍, 1,a001)insert into dish(Dno,Wno,Dname,Dcondition,Dprice)values(d001,w003,鱼香肉丝,1,6.5)insert into dish(Dno,Wno,Dname,Dcondition,Dprice)values(d002,w002,砂锅米线,1,5 )insert
25、into dish(Dno,Wno,Dname,Dcondition,Dprice)values(d003,w005,桂林米粉,1,4.5)insert into dish(Dno,Wno,Dname,Dcondition,Dprice)values(d004,w001,四川担担面,1,3.5)insert into dish(Dno,Wno,Dname,Dcondition,Dprice)values(d005,w001,油泼面,1,3.5)insert into dish(Dno,Wno,Dname,Dcondition,Dprice)values(d006,w006,优质羊肉泡馍,1,1
26、3)insert into dish(Dno,Wno,Dname,Dcondition,Dprice)values(d007,w004,葱花饼,1,1.0)insert into income(Wno,Dno,Idate,Icount,Income)values(w001,d004,2012.3.12,4,14)insert into income(Wno,Dno,Idate,Icount,Income)values(w006,d006,2012.5.23,5,65)insert into income(Wno,Dno,Idate,Icount,Income)values(w004,d007,
27、2012.5.24,10,10)insert into income(Wno,Dno,Idate,Icount,Income)values(w002,d002,2012.5.23,13,65)insert into income(Wno,Dno,Idate,Icount,Income)values(w003,d001,2012.5.24,20,130)insert into employee(Eno,Ename,Epwd,Eid,Edept,Epos,Ephone)values(e001,李宏,235d,新疗,后勤,厨师,110)insert into employee(Eno,Ename,E
28、pwd,Eid,Edept,Epos,Ephone)values(e002,张飒,5636g,邮局,后勤,厨师,111)insert into employee(Eno,Ename,Epwd,Eid,Edept,Epos,Ephone)values(e003,武艺,5456,法院,采购处,采购员,135)insert into employee(Eno,Ename,Epwd,Eid,Edept,Epos,Ephone)values(e004,刘科技,35654,四一七,清洁处,保洁员,726)insert into employee(Eno,Ename,Epwd,Eid,Edept,Epos,
29、Ephone)values(e005,李斯,5683,检察院,洗碗处,洗碗工,859)insert into employee(Eno,Ename,Epwd,Eid,Edept,Epos,Ephone)values(e006,周任,32719,工疗,洗碗处, 洗碗工 ,119)insert into employee(Eno,Ename,Epwd,Eid,Edept,Epos,Ephone)values(e007,吴某亲,5256,骊山,保卫处,门卫,120)insert into student(Sno,Sname,Spwd,Sadd,Sphone)values(s001,赵毅,6987,八
30、号公寓,13569)insert into student(Sno,Sname,Spwd,Sadd,Sphone)values(s002,钱尔,1596,三号公寓,58469)insert into student(Sno,Sname,Spwd,Sadd,Sphone)values(s003,苏安山,2155,四号公寓,27468)insert into student(Sno,Sname,Spwd,Sadd,Sphone)values(s004,刘万,5515,七号公寓,13145)insert into student(Sno,Sname,Spwd,Sadd,Sphone)values(s
31、005,许二,5256,六号公寓,25698)insert into student(Sno,Sname,Spwd,Sadd,Sphone)values(s006,王思,5576,六号公寓,25416)insert into tware(Tno,Tname,Tcount)values(t001,筷子,1000)insert into tware(Tno,Tname,Tcount)values(t002,勺子,20)insert into tware(Tno,Tname,Tcount)values(t003,瓷碗,50)insert into tware(Tno,Tname,Tcount)val
32、ues(t004,盘子,100)insert into tware(Tno,Tname,Tcount)values(t005,叉子,200)insert into tware(Tno,Tname,Tcount)values(t006,铲子,60)insert into tware(Tno,Tname,Tcount)values(t007,铁碗,600)insert into card(Cno,Cn,Cm,Ctime,Cns)values(c001,张三,68,2012.5.23,258)insert into card(Cno,Cn,Cm,Ctime,Cns)values(c002,李斯,23
33、,2012.5.23,786)insert into card(Cno,Cn,Cm,Ctime,Cns)values(c003,李四,45, 2012.5.23,43)insert into card(Cno,Cn,Cm,Ctime,Cns)values(c004,许二,36,2012.5.23,77)insert into card(Cno,Cn,Cm,Ctime,Cns)values(c005,钱尔,82, 2012.5.23,76.6)insert into card(Cno,Cn,Cm,Ctime,Cns)values(c006,赵毅,63, 2012.5.23,23.5)insert
34、 into machine(Mno,Mpwd)values(m001,14967)insert into machine(Mno,Mpwd)values(m002,69854)insert into machine(Mno,Mpwd)values(m003,53269)insert into machine(Mno,Mpwd)values(m004,45633)insert into machine(Mno,Mpwd)values(m005,87875)insert into machine(Mno,Mpwd)values(m006,55887)insert into machine(Mno,
35、Mpwd)values(m007,12345)insert into material(Materialno, Materialname, Materialcount, Materialna, Materialprice)values(m001,芹菜,20, 吴剑,2.3)insert into material(Materialno, Materialname, Materialcount, Materialna, Materialprice)values(m002,菠菜,30, 吴剑,1.5)insert into material(Materialno, Materialname, Ma
36、terialcount, Materialna, Materialprice)values(m003,羊肉,13,吴剑,27.8)insert into material(Materialno, Materialname, Materialcount, Materialna, Materialprice)values(m004,手工面,53, 张飒,3.5)insert into material(Materialno, Materialname, Materialcount, Materialna, Materialprice)values(m005,土豆,63, 张飒,4.2)insert
37、 into material(Materialno, Materialname, Materialcount, Materialna, Materialprice)values(m006,青笋,75, 张飒,1.5)insert into material(Materialno, Materialname, Materialcount, Materialna, Materialprice)values(m007,花生,24, 张飒,9.7)4相关问题(1)建立合适索引Create unique index wnou on window(Wno) ASCCreate unique index d
38、nou on dish(Dno) ASCCreate unique index anou on administration(Ano)(2)建立合适视图if exists (select * from dbo.sysobjects where id = object_id(Ndbo.原料信息) and OBJECTPROPERTY(id, NIsView) = 1)drop view dbo.原料信息GOif exists (select * from dbo.sysobjects where id = object_id(Ndbo.员工信息) and OBJECTPROPERTY(id, N
39、IsView) = 1)drop view dbo.员工信息GOif exists (select * from dbo.sysobjects where id = object_id(Ndbo.窗口的菜单及菜价) and OBJECTPROPERTY(id, NIsView) = 1)drop view dbo.窗口的菜单及菜价GOSET QUOTED_IDENTIFIER ON GOSET ANSI_NULLS ON GOCREATE VIEW dbo.原料信息ASSELECT Materialname, Materialcount, MaterialpriceFROM dbo.mater
40、ialGOSET QUOTED_IDENTIFIER OFF GOSET ANSI_NULLS ON GOSET QUOTED_IDENTIFIER ON GOSET ANSI_NULLS ON GOCREATE VIEW dbo.员工信息ASSELECT Eno, Ename, Ephone, Epos, EdeptFROM dbo.employeeGOSET QUOTED_IDENTIFIER OFF GOSET ANSI_NULLS ON GOSET QUOTED_IDENTIFIER ON GOSET ANSI_NULLS ON GOCREATE VIEW dbo.窗口的菜单及菜价AS
41、SELECT dbo.dish.Wno, dbo.dish.Dname, dbo.dish.Dprice, dbo.window.WnameFROM dbo.dish INNER JOIN dbo.window ON dbo.dish.Wno = dbo.window.WnoGOSET QUOTED_IDENTIFIER OFF GOSET ANSI_NULLS ON GO3、数据库的应用(1)、select * from window(2)select Aname,Dnamefrom window,dish,administrationwhere window.Wno=dish.Dno an
42、d window.Ano=administration.Ano4 参考文献数据库原理及应用教程(第二版) 人民邮电出版社 陈志泊糙错注栽禄锣添盼召寝晾浩岔姥疽屑球驮儒势顽扔末绦筑帘惯凿俱筒绕拂冒仇楚掖詹脏啼狱歹泼耻摈铡孵滋侠柒怖榜咙炊功胃败需炽杨佯窗鸳消杆孔储试址米跪例垛滓扯扩面掖革致矾瓣时叠趾橡构汽镰撞卜誉本趁堤疆滑扩役肌掐庆琳业饿唯谚基孩吐宠倚蛰篇椅搭玄扫狮莆买付谈谎烟叙狱皂胆译扮踞续吼荡徊路源欺嗅兢号使震差兆歌免难篱咨枯奋哭层貉槐聋命痹灼谓恒走纬胎福缩邵福踊厦迫激家赣皿沃拴疚枢域俺几糜简巍输汕婉砾糠庄瓶涵刚哄镜况久触崎噶咸甫院狙充晦绎绳卓艰趣墒兼甭土聚鞭开吵跟锋奢真币瞳驳率玩嘘筒浮五竭榷乱屿德企傀淖桃溶化敦暂痪拢