关于《餐饮管理》数据库问题,连载

handyworkroom 2003-09-07 09:10:55
还是上次的问题(关于一个房台呈现多个状态的问题)。本人想了很多,现在有个新方案,请大家给看看,合不合适。
这次主要想的是不在room表中加status字段,而是做一个查询,去检查各表中roomid是否存在,来确定status的值,这样的话,是动态的,而且可以自动刷新。
room表,房台表
roomid name type
101 101台 小台
102 102台 大台

roomstatus表,房台的状态和它对应的表达值
status_id name value
01 空闲 0
02 预订 1
03 使用 2
04 预订+使用 3
04 禁用 4

reserve预订表,
reserve_id roomid opentime deposit linkman note
0000001 101 2003-9-7 10:00 1000 XX

nouse禁用表
nouse_id roomid starttime endtime note
0000001 102 2003-8-1 2003-9-1 XX

guest表,客人消费使用表
guest_id roomid guestname starttime endtime note
0000001 101 XX 2003-9-7 9:02 null XXXX

现在101的房台被使用着,但又被预订着,我想用上面的说明的方式去查出101房台的状态,如:reserve表中找到有关101房台的信息(roomid='101')返回1,nouse表找到有关101的就返回4,guest表找到就返回2,以上如果表中没有的,就返回0,然后把它们返回的值加到一起去,就知道它的状态了,可是上面说的sql应该怎么写呀,谢谢大家了
...全文
37 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 元老 2003-09-09
  • 打赏
  • 举报
回复
这个查询可以得到状态,但不理想,因为它不能根据你的状态表中的值去对应:
select case when exists(select 1 from reserve where roomid=@roomid and opentime>getdate()) then 1 else 0 end
+case when exists(select 1 from nouse where roomid=@roomid and tarttime<=getdate() and endtime>=getdate()) then 4 else 0 end
+ case when exists(select * from guest where roomid=@roomid and endtime is null)then 2 else 0 end
handyworkroom 2003-09-08
  • 打赏
  • 举报
回复
又陷入了迷茫之中,我发现商业软件里的预订系统还可以预点菜,可是如果按我上面说的那样,好像又不能做预点菜,
唉,,应该怎么样去设计这个数据库呀,只要有能做的,我加分,加分要多少,给多少
w_rose 2003-09-07
  • 打赏
  • 举报
回复
嘿嘿!会说话就会写SQL,循着自然语言的思路就可以了。所以我喜欢SQL,讨厌C++。
w_rose 2003-09-07
  • 打赏
  • 举报
回复
select
case when exists(select * from reserve where roomid=@roomid and
opentime>getdate())
then 1 else 0 end
+
case when exists(select * from nouse where roomid=@roomid and
starttime<=getdate() and endtime>=getdate())
then 4 else 0 end
+
case when exists(select * from guest where roomid=@roomid and
endtime is null)
then 2 else 0 end
目 录 一.问题的定义……………………………………………3 1.问题目标 ………………………………………………………3 1.1开发目标 1.2应用目标 2.设计的思想 3.问题解决的范围 ………………………………………………………3 二.可行性研究……………………………………………3 1.单位的基本情况 ………………………………………………………3 2、系统的初步方案 ………………………………………………………4 3、开发系统的必要性…………………………………………………….4 4、技术可行性 ………………………………………………………4 5.操作性问题 ………………………………………………………5 6.经济可行性 ………………………………………………………5 7.结论 ………………………………………………………6 三、需求的获取……………………………………………6 1需求信息的收集 ………………………………………………………6 2 调查的目的 ………………………………………………………6 3 调查的内容 ………………………………………………………6 4.调查的方法………………………………………6 5.酒店管理系统的要求 ………………………………………………………7 5.1信息要求 5.2处理要求 5.3安全性和完整性要求 6.本系统涉及酒店的业务流程图 四.需求分析 ……………………………………………7 1.引言 ………………………………………………………7 1.1编写目的 1.2文档约定 1.3 预期的读者和阅读建议 1.4 产品的范围 1.5 参考文献 2.综合描述 ………………………………………………………8 2.1 产品的前景 2.2 产品的功能 2.3 用户类型和特征 2.4 运行环境 2.5 设计和实现上的限制 3.外部接口需求附录……………………………………………………10 3.1用户界面附录 3.2硬件接口 3.4 通信接口 4.系统特性 ………………………………………………………13 4.1说明和优先级 4.2 响应序列 4.3功能需求 5.其他非功能需求 ………………………………………………………14 5.1性能需求 5.2 安全设施要求 5.3 安全性需求 5.4故障处理 5.5 软件质量属性 6.其它要求 ………………………………………………………15 7.附件 ………………………………………………………16 7.1名词解释 7.2模型目的 7.3待确定问题 8.酒店管理系统分析与数据流图设计………………………………….16 8.1 酒店管理系统各模块之间的关系 8.2 酒店管理系统各模块的操作规程 9. 系统各模块分析、DFD图和数据字典 9.1总流程图 9.2酒店管理系统整个过程DFD图,数据字典 9.3 预定DFD图,数据字典 9.4 取消预定DFD图,数据字典 9.5 退房结账模块的数据流图,数据字典 9.6 客户入住模块的数据流图、数据字典 9.7餐饮娱乐等汇总流程图 9.8数据备份 9.9 信息查询模块的数据流图 9.10登陆系统的数据流程 9.11数据字典一览表(附表) 五.数据加工………………………………………………………..24 1 体系结构设计 1、1 体系结构的H图 1、2 体系结构的sc图 1、2、1 登录模块的sc图 1、2、2 预定模块的sc图 2. 数据设计 3、 接口设计 3.1 接口设计原则 3.2 内部接口设计 3.3人机接口即用户界面设计 4、 过程设计 4、1 登陆系统的流程图,N-S 图 4、1、1 登陆系统的流程图 4、1、2 登陆系统的N-S 图 4、1、2 登陆系统的伪代码(PDL语言) 4.2预定系统的流程图,N-S 图 5、 酒店管理系统的HIPO 图 5.1 预定系统的HIPO 图 六.设计图 …………………………………………………………24

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧