博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
酒店管理系统
阅读量:6009 次
发布时间:2019-06-20

本文共 2919 字,大约阅读时间需要 9 分钟。

--  create 创建-- alter  更改--      程序   存储过程名create proc usp_guestnumbytypename --客房类型名称            输出@typename nvarchar(32) output,--计数@count int outputas  --例如--选择select @count=count(*) from --客房信息表  内部 连接  客房类型表Room inner join RoomType--向  客房信息表.客房类型编号=客房类型.客房类型编号on Room.RoomTypeID=RoomType.TypeID--内部连接  客人信息表  向  客人信息表.客房编号=客房.客房编号inner join GuestRecord on GuestRecord.RoomID=Room.RoomID --   类型名称=自定义类型名称where TypeName=@typenamego--声明局部变量  @countdeclare @count int--声明@typenamedeclare @typename  nvarchar(32) --赋值set @typename ='标准间'set @count=0--实行  存储过程名  exec usp_guestnumbytypename @typename output,@count output--打印print @count print '入住'+@typename+'的客人总数是:'+convert(nvarchar(32),@count)go--第二题--创建  程序create procedure usp_RoomInfo--声明@roomnum @roomnum intas --判断if(@roomnum=-1) begin   --查询所有客房信息   select room.RoomID,Room.BedNum,Room.RoomStateID,TypeName,TypePrice    from room,roomtype    where room.roomtypeid=Roomtype.TypeID endelsebegin    select room.RoomID,Room.BedNum,Room.RoomStateID,TypeName,TypePrice    from room,roomtype    where room.roomtypeid=Roomtype.TypeID    and Room.RoomID=@roomnumend--调用exec usp_RoomInfo -1go --第三题create procedure  usp_DelListByType  @typeName nvarchar(20)as if not exists  --非  退出 (   select RoomTypeId from room  --房间的类型号   where roomtypeid in    (     select typeid     from roomtype     where typename=@typename   ) ) begin --删除    delete from roomtype    where typeName=@typename    --返回   错误行数    return @@rowcountendelsereturn -1--调用declare @result int--实行exec @result=usp_DelListByType '长包房'if(@result>0)print '删除酒店客房类型编号是三人间的记录'+convert(nvarchar(20),@result)+'条'elseprint @resultgo--第四题create Proc usp_insertGuestRecord--声明局部变量  @identityID nvarchar(20),  @guestName nvarchar(20),  @roomID int,  @resideID int,  @resideDate datetime,  @leaveDate datetime,  @Deposit decimal(18,2)=1000,  @TotalMoney decimal(18,2),  @guestID int outputas --检查身份证号  if(len(@identityID)!=18)  begin    print '身份证号只能是18位'    return  end  --押金的默认值为1000元(在参数的时候已经设置)  --插入记录    --开始  通过  begin tran   declare @ErrorSum int   --向客人信息表中插入值   insert into GuestRecord   values(@identityID,@guestName,@roomID,@resideID,   @resideDate,@leaveDate,@Deposit,@TotalMoney)   set @ErrorSum=@ErrorSum+@@Error      --将客人入住房间的当前状态设置为"入住"的状态编号   declare @roomStateID int   select @roomStateID=RoomStateID from roomState   where RoomStateName='已入住'      --更新  客人  赋值   update room set RoomStateID=@roomStateID   where RoomID=@roomID   set @ErrorSum=@ErrorSum+@@Error   if(@ErrorSum>0)   begin     rollback tran--回滚事务   end   else   begin   commit tran   --提交事务   set @guestID=@@Identity   end            go --调用 declare @guestID int exec usp_insertGuestRecord '410523198806267523','李小龙',1008,1,'2013-3-11','2013-3-15',500,500,@guestID outputif(@guestID>0)begin  print '插入客人记录操作成功'  print '客户编号是'+convert(nvarchar(20),@guestID)endelse print '操作失败'

 

转载于:https://www.cnblogs.com/WuXuanKun/p/5276485.html

你可能感兴趣的文章
.NET Core 2.0 Preview2 发布汇总
查看>>
根据IP查找计算机名
查看>>
C++_类继承6-继承和动态内存分配
查看>>
数据库优化经验总结
查看>>
Qt 使用 boost
查看>>
iOS define 宏定义 和 const定义常量区别
查看>>
salt-syndic使用
查看>>
VUE.JS 使用axios数据请求时数据绑定时 报错 TypeError: Cannot set property 'xxxx' of undefined 的解决办法...
查看>>
python基础知识
查看>>
python - os.path模块
查看>>
文件操作IO
查看>>
ML_Scaling to Huge Datasets & Online Learning
查看>>
zookeeper的安装与使用
查看>>
php基础知识【函数】(5)正则preg
查看>>
C# 接口的作用浅谈举例
查看>>
python字符串内建函数
查看>>
为了工作必须弄死面试算法题
查看>>
用visual studio 2017来调试python
查看>>
Tony's tour(poj1739,男人题之一,插头dp)
查看>>
C# 委托和事件 实现窗体间的通信
查看>>