ImageVerifierCode 换一换
格式:DOC , 页数:12 ,大小:339.50KB ,
资源ID:2210825      下载积分:20 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-2210825.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库分析与设计实验new.doc)为本站会员(dreamzhangning)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

数据库分析与设计实验new.doc

1、 -数据库分析与设计实验实施方案(一)-火车售票系统(sqlserver+jsp)-设计方案一、实验目标1. 客户需求概述 数据库分析与设计:通过 16 学时实验,初步了解企业真实的项目开发流程,掌握数据库设计思路;同时,通过数据库设计和应用开发的培训,对软件开发行业有一定的认知。 本次实习还贯穿了团队合作、职业素质等培养,使学生在有限的社会资源下能够发挥狼性精神,占领自己的一片天空;在团队合作中感受企业文化,体验团队合作精神;相关的职业素质的整合,保障学生不会因为综合素质达不到企业的要求而叩不开企业的大门。2. 目标 熟悉目前企业数据库建模流程 掌握数据库设计思路 掌握数据库 DDL 、DM

2、L 语言 掌握应用程序访问数据库的方法 完成火车售票系统数据库设计及功能实现二、实验内容序号 知识点 内容及要求 工具第一阶段 需求分析数据库设计阶段实习内容:- 掌握 Sqlserver2005 工具使用;- 火车售票系统需求分析,完成需求分析文档;- 火 车售票系统数据库设计,完成数据库设计文档;- 使用建模工具建立数据模型Sqlserver2005第二阶段 建库建表约束阶段实习内容:- 掌握数据库的创建语句;- 掌握数据库表的创建语句 ;- 掌握主外键的语句以及各类约束语句 ;- 完成数据库表的创建及添加约束 ;Sqlserver2005第三阶段 DML游标阶段实习内容:- 掌握常用的

3、DML 语句 ;Sqlserver2005- 完成车次表、车次详细信息、站点表中插入测试数据;- 掌握 sqlserver 中游标的用法;- 完成使用游标提取并输出开始站点相同但车次不同的数据。第四阶段 存储过程触发器函数阶段实习内容:- 掌握存储过程的创建和使用;- 掌握触发器的创建和使用;- 掌握函数的创建和使用 ;- 存储过程实现每次车从起点开始每一站所需要的价格;- 发车计划表添加触发器实现自动生成车票信息Sqlserver2005第五阶段 JDBCJSP阶段实习内容:- 掌握 JAVA JDBC 方式连接数据 库;- 应用程序实现数据库的操作;- JSP 可视化界面实现车次信息的查询

4、;- JSP 可视化界面实现车票的购买;Sqlserver2005MyEclipse第六阶段 完成项目项目验收阶段实习内容:- 完整实现火车售票系统数据库功能- 掌握应用程序访问数据库- 掌握编写测试用例并完成测试- 测试软件及 bug 修改- 项目验收Sqlserver2005MyEclipse三、课堂模式时间 实习方式课前15 分钟1、项目主管以提问的形式,领着学生回顾上阶段的知识点;2、项目主管介绍一些行业知识 ,当前流行技 术等。课堂 1、阶段期间项目主管会带领学生 实践代码编写,先将范例讲解,然后进入项目分析功能的实现;2、在上课休息期间,项目主管会集中分析一些学生在学习过 程中遇到

5、的问题;3、鼓励技术好的学员帮助技术 差的学生调试代码, 这样既可以提高学生的技 术水平,同时培养了学生的团队意识,也增加了班 级的凝聚力;4、在整个上课期间,项目主管会注意培养学生代码规范性,会给学生提出书写规范代码的要求,并发给学生规范性代 码的模板让学生来模仿。上课下课前 15分钟1、项目主管会领着学生回顾阶 段的所有知识点,主要采取以提问学生总结为主,项目主管补充为辅的方式,来保证 学生当堂课对知识点的消化;2、项目主管给学生布置作业,作业内容为企业面试题;3、项目主管会布置预习任务并提出 预习知识点以方便第二天 课程的学习;-4、项目主管负责给学生共享知 识点总结,上 课源代码,作业

6、题和预习知识的文档;5、培养学生好的习惯,结束课程之后要把桌椅回归原位,保持座位的干净、整洁。课后 1、项目主管在线给学生远程协 助调代码,帮助学生解答在学习过程中遇到的难点;2、对于掌握比较好的同学,给予课外知识的扩充;3、给学生留一些企业的面试题 。四、实验条件序号 实习设施 规格要求 数量1 计算机 P4 512M 及以上 1 套/人SqlServer SqlServer2000 及以上2开发工具应用程序开发 MyEclipse6.0 及以上1 套/人五、项目一览 数据库表- 关系图 应用程序截图搜索全部 车 次-搜索指定 车 次 sqlserver 关键代码实现/*三、假设普快每公里票

7、价.2元、特快每公里票价.3元创建带参(车次)存储过程,实现每次车从起点开始到每个站点所需要的价钱 */create procedure proc_moneytrain_id varchar(10) as-查询火车类型declare train_type int if not exists (select train_type from train_info where train_id=train_id)beginprint 车次输入错误return end elsebeginselect train_type=train_type from train_info where train_i

8、d=train_idend-声明游标-declare cur_trainDetail cursor for select s1.station_name , td.distancefrom train_detail td ,station s1 where td.train_id=train_id and td.station_id=s1.station_id order by td.serial -打开游标open cur_trainDetaildeclare station_name varchar(10)declare distance intdeclare money float de

9、clare price float if train_type=0 set price = 0.2elseset price = 0.3declare tmpDistance int set tmpDistance = 0.3 -提取游标,放入指定的变量fetch next from cur_trainDetail into station_name ,distance-0表示提取成功-1 找不到记录-2超出了最后一条while fetch_status = 0beginset tmpDistance = tmpDistance+distanceset money = tmpDistance*

10、priceprint station_name+ +cast(money as varchar)fetch next from cur_trainDetail into station_name ,distanceend -关闭游标close cur_trainDetaildeallocate cur_trainDetailgo/* 四、在train_info表中,使用游标提取并输出开始站点相同但车次不同的数据 */begin-declare id_1 varchar(10)declare id_2 varchar(10)declare start_id_1 intdeclare start_

11、id_2 intdeclare cur_1 cursor for select train_id,start_station_id from train_info declare cur_2 cursor scroll for select train_id,start_station_id from train_info open cur_1 open cur_2fetch next from cur_1 into id_1,start_id_1 while fetch_status=0beginfetch first from cur_2 into id_2,start_id_2while

12、 fetch_status=0beginif start_id_1 = start_id_2 and id_1 = id_2beginfetch next from cur_2 into id_2,start_id_2continueend if start_id_1 = start_id_2 and id_1 id_2beginprint cast(start_id_1 as varchar) + + id_1print cast(start_id_2 as varchar) + + id_2breakendfetch next from cur_2 into id_2,start_id_2

13、end fetch next from cur_1 into id_1,start_id_1 endclose cur_1close cur_2deallocate cur_1deallocate cur_2end/*五、创建tain_plan表触发器,以生成车票信息 */-create trigger tri_train_plan_insert on train_plan after insertasdeclare train_id varchar(10)declare hardseat intdeclare softseat intdeclare hardbed intdeclare so

14、ftbed intdeclare go_off datetimeselect train_id = train_id ,hardseat = Hardseat_carriage,softseat = Softseat_carriage,hardbed = Hardbed_carriage,softbed = Softbed_carriage ,go_off = go_offfrom Inserted - 循环变量declare i intdeclare j int -生成硬座车票set i=1 while i=hardseatbeginset j=1while j=100 begininser

15、t into ticket(train_id,go_off,carriage_id,seat_id,ticket_type,ticket_Status)values(train_id,go_off,i,j,0,0)set j = j+1end set i = i+1end -生成软座车票set i=1 while i=softseatbeginset j=1-while j=80 begininsert into ticket(train_id,go_off,carriage_id,seat_id,ticket_type,ticket_Status)values(train_id,go_off

16、,i,j,1,0)set j = j+1end set i = i+1end -生成硬卧车票set i=1 while i=hardbedbeginset j=1while j=50 begininsert into ticket(train_id,go_off,carriage_id,seat_id,ticket_type,ticket_Status)values(train_id,go_off,i,j,2,0)set j = j+1end set i = i+1end -生成软卧车票set i=1 while i=softbedbeginset j=1while j=30 beginins

17、ert into ticket(train_id,go_off,carriage_id,seat_id,ticket_type,ticket_Status)values(train_id,go_off,i,j,3,0)set j = j+1-end set i = i+1end go/*六、创建sell_info表触发器,以修改车票信息 */-sell_info表中插入数据,表示车票已售出,修改ticket表状态为create trigger tri_sell_info_inserton sell_infoafter insertasdeclare ticket_id int select t

18、icket_id=ticket_id from insertedupdate ticket set ticket_status=1 where ticket_id=ticket_idgo-sell_info表中删除数据,表示车票退票,修改ticket表状态为2create trigger tri_sell_info_deleteon sell_infoafter deleteasdeclare ticket_id intselect ticket_id=ticket_id from deleted update ticket set ticket_status=2 where ticket_i

19、d=ticket_idgo/*七、查询某一趟列车各类车票剩余数目及状态 */drop procedure proc_ticket ;create procedure proc_tickettrain_id varchar(10)asbegindeclare num int declare typeId int -declare statusId intdeclare type varchar(10)declare status varchar(10)declare cur_ticket cursor for select ticket_type,ticket_status,count(*) a

20、s num from ticket where train_id=train_idgroup by ticket_type , ticket_status open cur_ticketfetch next from cur_ticket into typeId,statusId,numwhile fetch_status=0beginif typeId=0set type = 硬座else if typeId=1set type = 软座else if typeId=2set type = 硬卧else if typeId=3set type = 软卧if statusId=0set status=未售else if statusId=1set status=已售else if statusId=2set status=退票print type+ +status+ +cast(num as varchar)fetch next from cur_ticket into typeId,statusId,numendclose cur_ticketdeallocate cur_ticketend

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报