还剩10页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
SQL课程设计流程报告
1、周二完成任务(总体需求分析与设计)数据需求分析数据库数据要完整、同步、全面地反映企业洗浴系统的房间和衣柜使用信息,以及客人结帐信息等功能需求分析系统主要包括基本信息管理、前台信息管理、后台信息管理等管理功能模块,可以随时对信息进行添加、修改、删除、查询等操作,具有管理基本信息、收银结账、月营业分析等主要功能,并采用图形界面加数据的管理方式,让管理者可以动态地管理现有的信息
2、周三完成任务(数据库设计)
1.数据表的设计操作员管理表房间信息表房间类型表房间消费结账表衣柜信息表
2.数据的录入
3.创建视图建立视图v_fjxx如下CREATEVIEWdbo.v_fjxxASSELECTdbo.房间信息表.房间编号dbo.房间信息表.房间类型dbo.房间信息表.房间状态dbo.房间类型表.房间价格FROMdbo.房间信息表INNERJOINdbo.房间类型表ONdbo.房间信息表.房间类型=dbo.房间类型表.房间类型建立视图v_jz如下:CREATEVIEWdbo.v_jzASSELECTdbo.房间消费结帐表.结帐单据号dbo.房间消费结帐表.房间编号dbo.房间类型表.房间价格dbo.房间消费结帐表.进入时间dbo.房间消费结帐表.结束时间dbo.房间消费结帐表.消费时间dbo.房间消费结帐表.消费金额dbo.房间消费结帐表.结帐日期dbo.房间信息表.房间状态FROMdbo.房间消费结帐表INNERJOINdbo.房间信息表ONdbo.房间消费结帐表.房间编号=dbo.房间信息表.房间编号INNERJOINdbo.房间类型表ONdbo.房间信息表.房间类型=dbo.房间类型表.房间类型
4.创建规则房间信息表中属性建立规则room_id_rule房间编号@房间编号like[A-D][1-100]‘room_type_rule房间状态@房间状态in使用空闲房间状态表中属性建立规则room_state_rule房间类型@房间类型in‘单人间’‘双人间’‘五人间十人间衣柜表中的属性建立规则yg_state_rule衣柜状态@衣柜状态in使用空闲yg_id_rule衣柜编号@衣柜编号between01and100房间消费结账表中的属性建立规则if_rule是否结束@是否结束in是否
3、周四完成任务程序模块设计及PB语言实现:
1.在应用对象的open事件中添加脚本:SQLCA.DBMS=ODBCSQLCA.AutoCommit=FalseSQLCA.DBParm=ConnectString=DSN=xy;UID=;PWD=connectusingsqlca;ifsqlca.sqlcode0thenMessageBox提示信息不能连接数据库+sqlca.sqlerrtexthaltclosereturnendif
2.登录窗口stringczy99pwd99czy100pwd100pwd200czy99=trimddlb_
1.textpwd99=trimsle_
1.textifczy99=thenmessagebox请选择操作员!elseifpwd99=thenmessagebox请输入密码!sle_
1.setfocuselseselect操作员密码into:pwd100from操作员管理where操作员=:czy99;pwd200=trimpwd100ifpwd200=pwd99thenczyvar=trimczy99openw_maincloseparentelsemessagebox密码有误!sle_
1.text=sle_
1.setfocusendifendifendif
3.衣柜信息管理添加衣柜信息g_RowNumber=dw_
1.InsertRow0dw_
1.SetFocusdw_
1.ScrollToRowG_RowNumberdw_
1.SetColumn1删除衣柜信息g_rownumber=dw_
1.getrowdeleterowdw_1g_rownumber保存衣柜信息ifupdatedw_1truefalse=1thendw_
1.resetupdatecommit;elserollback;messagebox错误!数据保存失败!endif
4.房间信息管理在“添加房间信息”按钮的click事件中添加脚本openw_room_appendcloseparent在“删除房间信息”按钮的click事件中添加脚本g_rownumber=dw_
1.getrowdeleterowdw_1g_rownumber在“保存房间信息”按钮的click事件中添加脚本ifupdatedw_1truefalse=1thendw_
1.resetupdatecommit;elserollback;messagebox错误!数据保存失败!endif在“打印房间信息”按钮的click事件中添加脚本dw_
1.print
5.衣柜服务管理open事件dw_
1.settransobjectsqlcadw_
1.retrievestringygbh//把不同的衣柜编号添加到组合框ddlb_1中declarecursor1cursorforselectdistinct衣柜编号from衣柜信息表;opencursor1;fetchcursor1into:ygbh;dowhilesqlca.sqlcode=0ddlb_
1.additemygbhfetchcursor1into:ygbh;loopclosecursor1;查看指定衣柜信息的clicked事件dw_
1.settransobjectsqlcastringsqlsql=select衣柜编号衣柜状态from++衣柜信息表where衣柜编号=+ddlb_
1.text+//检索满足条件的信息dw_
1.setsqlselectsqldw_
1.retrieveiii0=dw_
1.getrowifiii00thendw_
1.scrolltorowiii0ygbh0=dw_
1.getitemstringiii01elseendif领取衣柜牌的clicked事件stringztzt1zt=使用//选择数据select衣柜状态into:zt1from衣柜信息表where衣柜编号=:ygbh0;iftrimzt1=ztthenmessagebox提示该衣柜已在使用中请选择其它衣柜!else//修改记录update衣柜信息表set衣柜状态=:ztwhere衣柜编号=:ygbh0;endifdw_
1.settransobjectsqlcadw_
1.retrieve撤销衣柜牌的clicked事件stringztzt=空闲update衣柜信息表set衣柜状态=:ztwhere衣柜编号=:ygbh0;dw_
1.settransobjectsqlcadw_
1.retrieve
6.房间服务管理open事件dw_
2.settransobjectsqlcadw_
2.retrievestringfjbh//把不同的房间编号添加到组合框ddlb_2中declarecursor2cursorforselectdistinct房间编号from房间信息表;opencursor2;fetchcursor2into:fjbh;dowhilesqlca.sqlcode=0ddlb_
2.additemfjbhfetchcursor2into:fjbh;loopclosecursor2;查看指定房间的clicked事件dw_
2.settransobjectsqlcastringsqlsql=select房间编号房间类型房间状态from++房间信息表where房间编号=+ddlb_
2.text+//检索满足条件的信息dw_
2.setsqlselectsqldw_
2.retrieveiii0=dw_
2.getrowifiii00thendw_
2.scrolltorowiii0ygbh0=dw_
2.getitemstringiii01elseendif进入房间消费的clicked事件stringztzt1zt=使用//选择数据select房间状态into:zt1from房间信息表where房间编号=:fjh0;iftrimzt1=ztthenmessagebox提示该房间正在使用中请选择其它房间!else//修改记录update房间信息表set房间状态=:ztwhere房间编号=:fjh0;dw_
2.settransobjectsqlcadw_
2.retrieveopenw_jrfjxfcloseparentendif结束房间消费的clicked事件stringztjssjsfjszt=空闲jssj=stringtoday++stringnowsfjs=是insertinto房间消费结帐表结束时间是否结束values:jssj:sfjs;update房间信息表set房间状态=:ztwhere房间编号=:fjh0;dw_
2.settransobjectsqlcadw_
2.retrieveopenw_jz这时打开结帐收银窗口结帐的clicked事件stringfjbhdatetimejrsjjssjdecimalh1m1h2m2xfsjrealxfjefjjgselect房间编号进入时间结束时间房间价格into:fjbh:jrsj:jssj:fjjgfrom房间消费结帐表where房间编号=:fjh0;h1=hourtimejrsjm1=minutetimejrsjh2=hourtimejrsjm2=minutetimejrsjxfsj=h2+m2/60-h1+m1/60xfje=xfsj*fjjginsertinto房间消费结帐表消费金额values:xfje;messagebox提示消费金额为+stringxfje
7.历史单据查询筛选结帐单据的clicked事件stringjzdjhsqlqsrqjsrqjsrq1qsrq=stringtrimem_
1.textjsrq1=stringtrimem_
2.textjsrq=jsrq1+string999999dw_
1.settransobjectsqlcasql=select*fromv_jzwhere结帐单据号=++qsrq++and结帐单据号=+jsrq+dw_
1.setsqlselectsqldw_
1.retrieve
4、周五完成任务程序调试及答辩:在周五上午完成了程序的调试、修改和测试,准备好了答辩PPT,下午进行了答辩,基本完成此次课程设计。