全球旧事资料 分类
定义输入的参数名为RoomType定义输出的价格参数名为RoomPrice。根据存储过程的创建语法,编写SelRoom的实现代码如下:
createprocedureselroomroomtypechar2roomPricesmallmo
eyoutputasselect客房号from客房信息where客房类型编号roomtypea
d客房状态Nselectroomprice价格from客房类型where客房类型编号roomtype
Cou
tyciaredshxmpvfblYkzgw
f在上面的代码中包含了两个Select语句,第一个SELECT语句从客房信息表中选择了所有客房类型为输入参数指定类型并且客房状态为“空”(N)的客房号,并将所有记录作为结果集返回;第二个SELECT语句从客房类型中取得了制定客房类型的价格,作为输出参数Roomprice返回。
2、客人入住登记处理客人入住登记操作完成后,入住的客房状态应该及时做相应的改变,并记录
客人的序号供以后查询。这一功能可以使用触发器来自动进行:因为进行客人入住登记操作是在客人信息表中添加一条新记录,所以可以为客人信息表设计一个INSERT触发器,当客人信息执行INSERT操作后自动更改客房信息相应客房记录的数据。定义这个触发器名称为clie
t_i
sert。其实现代码如下:
createtriggerclie
t_i
serto
dbo客人信息fori
sertasupdate客房信息set客房状态F客房信息入住客人序号B序号from客房信息ASAi
sertedasBWHEREA客房号b客房号
3、客人离店退房处理客人在离店退房时,服务员输入客人的退房时间,然后计算出客人的住宿费
用,以便于客人结帐。同时,系统应该将客人所退房的状态更改为“空”,以便于再次接待下一位客人入住。这一功能也可以通过一个触发器来实现。为客人信息表设计一个名为clie
t_update的UPDATE触发器,当系统对客人信息的离店时间进行UPDATE操作后,将会自动触发它。该触发器将自动取得当前所退客房的单价,并根据客人入住的天数计算出客人的住宿费用,将费用值写入住宿费
Cou
tyciaredshxmpvfblYkzgw
f列,最后触发器将客房信息的相应客房记录的客房状态和入住序号更新,即将客房状态置为空房,并清除对于该客人的入住标识信息。下面是clie
t_update触发器的定义代码:
createtriggerclie
t_updateo
dbo客人信息forupdateasifupdate离店时间只有对离店时间列进行更改时才处理begi
求出客人所住客房的单价declarepricesmallmo
eysetpriceselect价格from客房类型rightjoi
客房信息o
客房类型客房类型编号客房信息客房类型编号rightjoi
客人信息o
客房信息客房号客人信息客房号where客人信息序号i
select序号fromi
serted求客人住宿费并更改住宿费列update客人信息setr
好听全球资料 返回顶部