欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    酒店管理系统设计-数据库课程设计(共14页).doc

    • 资源ID:14056634       资源大小:51KB        全文页数:14页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    酒店管理系统设计-数据库课程设计(共14页).doc

    精选优质文档-倾情为你奉上数据库 酒店管理系统 课程设计(基于 SQL server 2000)实现过程1.1 通过查询分析器实现建立数据库、数据表-创建数据库和数据表-(1)创建酒店管理系统数据库 CREATE DATABASE 酒店管理系统(2)创建客房信息表 CREATE TABLE 客房(客房编号 CHAR(8) PRIMARY KEY, 客房类型 CHAR(8)NOT NULL, 价格 SMALLMONEY NOT NULL, 床位数 INT NOT NULL, 使用状态 CHAR(8) NOT NULL) INSERT INTO 客房 VALUES('101','一',100,1,'在使用')INSERT INTO 客房 VALUES('102','二',200,2,'在使用')INSERT INTO 客房 VALUES('103','二',200,1,'在使用')INSERT INTO 客房 VALUES('104','三',300,2,'在使用')INSERT INTO 客房 VALUES('105','三',300,1,'未使用')(3)创建客户信息表 CREATE TABLE 客户(客户编号 CHAR(8)PRIMARY KEY,客户名称 CHAR(10)NOT NULL, 身份证号 CHAR(18)NOT NULL, 联系地址 CHAR(25), 联系电话 CHAR(10)INSERT INTO 客户 VALUES('1001','王一',12234,'江西','')INSERT INTO 客户 VALUES('1002','张三',34234,'江西','')INSERT INTO 客户 VALUES('1003','李四',56465,'江西','')INSERT INTO 客户 VALUES('1004','王钱',65435,'江西','')INSERT INTO 客户 VALUES('1005','孙志',11464,'江西','') (4)创建入住登记表 CREATE TABLE 入住登记(客房编号 CHAR(8)FOREIGN KEY REFERENCES 客房(客房编号), 客户编号 CHAR(8)FOREIGN KEY REFERENCES 客户(客户编号), 预定日期 DATETIME, 预定数量 INT,PRIMARY KEY(客房编号,客户编号) INSERT INTO 入住登记 VALUES('101','1001',2010-10-10,1)INSERT INTO 入住登记 VALUES('102','1002',2010-12-10,1)INSERT INTO 入住登记 VALUES('103','1003',2010-12-26,1)INSERT INTO 入住登记 VALUES('104','1004',2010-12-9,1)-创建查询视图-1.2系统功能相应的查询视图:(1)客户信息查询视图 CREATE VIEW 客户信息查询AS SELECT * FROM 客户(2)客房信息查询 CREATE VIEW 客房信息查询AS SELECT * FROM 客房(3)入住信息查询CREATE VIEW 入住登记信息查询AS SELECT * FROM 入住登记(4)入住信息查询 CREATE VIEW 入住信息查询 AS SELECT入住登记.客房编号,客户名称,入住登记.客户编号,客房.客房类型,价格,使用状态FROM 客房,客户,入住登记WHERE 客房.客房编号=入住登记.客房编号 AND 入住登记.客户编号=客户.客户编号-建立索引-1.3建立索引及数据入库1.建立客房编号,价格,客户编号,客户名称的索引创建客房表索引:CREATE UNIQUE INDEX UKF ON 客房(客房编号,价格) 创建客户表索引:CREATE UNIQUE INDEX UKH ON 客户(客户编号,客户名称) 创建入住表索引:CREATE UNIQUE INDEX URZ ON 入住登记(客户编号,客房编号)2.数据入库 方法一 酒店管理系统包括客房信息表,客户信息表,入住登记信息表。采用Excel中录入数据,然后使用SQL Server 2000数据导入、导出功能直接将数据导入到相应的基本表。 方法二 在查询分析器中插入相关数据,用SQL语句插入。-创建存储过程-1.4建立存储过程1.4.1客房信息存储过程插入客房信息存储过程:CREATE PROCEDURE 插入客房信息(KFB CHAR(8),KFL CHAR(8),JG SMALLMONEY,CWS INT,SYZT CHAR(8)ASINSERT INTO 客房 VALUES (KFB,KFL,JG,CWS,SYZT)修改客房信息存储过程:CREATE PROCEDURE 修改客房信息(KFB CHAR(8),KFL CHAR(8),JG SMALLMONEY,CWS INT,SYZT CHAR(8)ASUPDATE 客房SET 客房类型=KFL,价格=JG,床位数=CWS,使用状态=SYZTWHERE 客房编号=KFB删除客房信息存储过程:CREATE PROCEDURE 删除客房信息(KFB CHAR(8)ASDELETE FROM 客房 WHERE 客房编号=KFB1.4.2客户信息存储过程插入客户信息CREATE PROCEDURE 插入客户信息(KHB CHAR(8),KFM CHAR(10),SFZ CHAR(18),LXDZ CHAR(25),LXDH CHAR(10)ASINSERT INTO 客户 VALUES (KHB,KFM,SFZ,LXDZ,LXDH)修改客户信息CREATE PROCEDURE 修改客户信息(KHB CHAR(8),KFM CHAR(10),SFZ CHAR(18),LXDZ CHAR(25),LXDH CHAR(10)ASUPDATE 客户SET 客户名称=KFM,身份证号=SFZ,联系地址=LXDZ,联系电话=LXDHWHERE 客户编号=KHB删除客户信息CREATE PROCEDURE 删除客户信息(KHB CHAR(8)ASDELETEFROM 客户WHERE 客户编号=KHBEXEC 删除客户信息 KHB='10009'3.4.3创建入住信息存储过程插入入住信息 CREATE PROCEDURE 插入入住信息(KFB CHAR(8), KHB CHAR(8), YDRQ DATETIME,YDSL INT)ASINSERT INTO 入住登记 VALUES(KFB,KHB,YDRQ,YDSL)修改入住信息CREATE PROCEDURE 修改入住信息(KFB CHAR(8), KHB CHAR(8), YDRQ DATETIME,YDSL INT)ASUPDATE 入住登记SET 客房编号=KFB,预定日期=YDRQ ,预定数量=YDSLWHERE 客户编号=KHB删除入住信息CREATE PROCEDURE 删除入住信息( KHB CHAR(8)ASDELETE FROM 入住登记WHERE 客户编号=KHB1.5查询存储过程的创建客房编号查询CREATE PROCEDURE 客房编号查询(KFB CHAR(8),KFL CHAR(8)OUTPUT,JG SMALLMONEY OUTPUT,CWS INT OUTPUT,SYZT CHAR(8)OUTPUT)ASSELECT KFL=客房类型,JG=价格,CWS=床位数,SYZT=使用状态FROM 客房WHERE 客房编号=KFB 客户编号查询CREATE PROCEDURE 客户编号查询(KHB CHAR(8),KFM CHAR(10)OUTPUT ,SFZ CHAR(18)OUTPUT,LXDZ CHAR(25)OUTPUT,LXDH CHAR(10)OUTPUT)ASSELECT KFM=客户名称,SFZ=身份证号,LXDZ=联系地址,LXDH=联系电话FROM 客户WHERE 客户编号=KHB入住客户编号查询CREATE PROCEDURE 入住客户编号查询(KFB CHAR(8)OUTPUT, KHB CHAR(8), YDRQ DATETIME OUTPUT,YDSL INT OUTPUT)ASSELECT KFB=客房编号,YDRQ=预定日期,YDSL=预定数量FROM 入住登记WHERE 客户编号=KHB-建立触发器-1.6、建立触发器保证数据的一致性客房使用状态的控制CREATE TRIGGER 控制触发器 ON 入住登记FOR INSERT AS UPDATE 客房SET 使用状态='使用中'WHERE 客房编号=ANY (SELECT 客房编号 FROM INSERTED )控制入住信息删除的触发器CREATE TRIGGER 入住删除触发器 ON 入住登记FOR DELETE AS BEGIN DELETE FROM 客户WHERE 客户编号=ANY (SELECT 客户编号 FROM DELETED )UPDATE 客房SET 使用状态='未使用'WHERE 客房编号=ANY(SELECT 客房编号 FROM DELETED)END客户信息删除的控制CREATE TRIGGER 客户删除触发器 ON 客户FOR DELETE AS BEGIN DELETE FROM 入住WHERE 客户编号=ANY (SELECT 客户编号 FROM DELETED )UPDATE 客房SET 使用状态='未使用'WHERE 客房编号=ANY(SELECT 客房编号 FROM DELETED)END客房删除触发器CREATE TRIGGER 客房删除触发器 ON 客房FOR DELETE AS DELETE FROM 入住WHERE 客户编号=ANY (SELECT 客户编号 FROM DELETED )酒店管理系统数据库脚本-数据库初始化-set nocount onset dateformat mdygo use master goif exists(select * from sysdatabases where name='酒店管理系统') /*删除在master中已存*/ /*在的名为酒店管理系统的数据库*/drop database 酒店管理系统go-酒店管理系统的建立-create database 酒店管理系统on primary /*设定系统主文件*/(name='酒店管理系统_data',filename='d:酒店管理系统.mdf',size=10,maxsize=50,filegrowth=5)log on /*创建事务日志文件*/(name='酒店管理系统_log',filename='d:酒店管理系统.ldf',size=5,maxsize=25,filegrowth=5)go-(注:删除查询分析器中的以上代码后,运行以下代码)-建立信息表-use 酒店管理系统if exists(select * from sysobjects where name='客户') drop table 客户goprint 'drop table 客户'print 'create table 客户'go/*客户信息表*/ CREATE TABLE 客户 /*创建客户信息表*/(客户编号 CHAR(8)PRIMARY KEY,客户名称 CHAR(10)NOT NULL,身份证号 CHAR(18)NOT NULL,联系地址 CHAR(25),联系电话 CHAR(10)go-插入客户数据-INSERT INTO 客户 VALUES('1001','王一',12234,'江西','')INSERT INTO 客户 VALUES('1002','张三',34234,'江西','')INSERT INTO 客户 VALUES('1003','李四',56465,'江西','')INSERT INTO 客户 VALUES('1004','王钱',65435,'江西','')INSERT INTO 客户 VALUES('1005','孙志',11464,'江西','')-if exists(select * from sysobjects where name='客房')drop table 客房goprint 'drop table 客房'print 'create table 客房'go/*客房信息表*/ CREATE TABLE 客房 /*创建客房信息表*/(客房编号 CHAR(8) PRIMARY KEY,客房类型 CHAR(8)NOT NULL,价格 SMALLMONEY NOT NULL,床位数 INT NOT NULL,使用状态 CHAR(8) NOT NULL) go-插入客房数据-INSERT INTO 客房 VALUES('101','一',100,1,'使用中')INSERT INTO 客房 VALUES('102','二',200,2,'使用中')INSERT INTO 客房 VALUES('103','二',200,1,'使用中')INSERT INTO 客房 VALUES('104','三',300,2,'使用中')INSERT INTO 客房 VALUES('105','三',300,1,'使用中')-if exists(select * from sysobjects where name='入住登记')drop table 入住登记goprint 'drop table 入住登记'print 'create table 入住登记'go/*入住登记信息表*/CREATE TABLE 入住登记 /*创建入住登记信息表*/(客房编号 CHAR(8)FOREIGN KEY REFERENCES 客房(客房编号), 客户编号 CHAR(8)FOREIGN KEY REFERENCES 客户(客户编号), 预定日期 DATETIME, 预定数量 INT,PRIMARY KEY(客房编号,客户编号)go-插入入住登记信息数据-INSERT INTO 入住登记 VALUES('101','1001',2010-10-10,1)INSERT INTO 入住登记 VALUES('102','1002',2010-12-10,1)INSERT INTO 入住登记 VALUES('103','1003',2010-12-26,1)INSERT INTO 入住登记 VALUES('104','1004',2010-12-9,1)go-建立索引-CREATE UNIQUE INDEX UKF ON 客房(客房编号,价格) goCREATE UNIQUE INDEX UKH ON 客户(客户编号,客户名称) goCREATE UNIQUE INDEX URZ ON 入住登记(客户编号,客房编号)go-建立触发器-建立控制触发器(保证在客房使用状态的一致性)-if exists (select * from sysobjects where name='控制触发器')drop trigger 控制触发器GOCREATE TRIGGER 控制触发器 ON 入住登记FOR INSERT AS UPDATE 客房SET 使用状态='使用中'WHERE 客房编号=ANY (SELECT 客房编号 FROM INSERTED )go-建立入住删除触发器(保证信息删除的一致性)-if exists (select * from sysobjects where name='入住删除触发器')drop trigger 入住删除触发器GOCREATE TRIGGER 入住删除触发器 ON 入住登记FOR DELETE AS BEGIN DELETE FROM 客户WHERE 客户编号=ANY (SELECT 客户编号 FROM DELETED )UPDATE 客房SET 使用状态='未使用'WHERE 客房编号=ANY(SELECT 客房编号 FROM DELETED)ENDgo-建立客房删除触发器(保证删除的一致性)-if exists (select * from sysobjects where name='客房删除触发器')drop trigger 客房删除触发器GOCREATE TRIGGER 客房删除触发器 ON 客房FOR DELETE AS DELETE FROM 入住WHERE 客户编号=ANY (SELECT 客户编号 FROM DELETED )go-创建查询视图-CREATE VIEW 入住信息查询 AS SELECT 入住登记.客房编号,客户名称,入住登记.客户编号,客房.客房类型,价格,使用状态FROM 客房,客户,入住登记WHERE 客房.客房编号=入住登记.客房编号 AND 入住登记.客户编号=客户.客户编号go-建立存储过程-客房信息插入存储过程-CREATE PROCEDURE 插入客房信息(KFB CHAR(8),KFL CHAR(8),JG SMALLMONEY,CWS INT,SYZT CHAR(8)ASINSERT INTO 客房 VALUES (KFB,KFL,JG,CWS,SYZT)GO-客房信息修改的存储过程-CREATE PROCEDURE 修改客房信息(KFB CHAR(8),KFL CHAR(8),JG SMALLMONEY,CWS INT,SYZT CHAR(8)ASUPDATE 客房SET 客房类型=KFL,价格=JG,床位数=CWS,使用状态=SYZTWHERE 客房编号=KFBgo-客房信息删除的存储过程-CREATE PROCEDURE 删除客房信息(KFB CHAR(8)ASDELETE FROM 客房 WHERE 客房编号=KFBGO-客户信息插入的存储过程-CREATE PROCEDURE 插入客户信息(KHB CHAR(8),KFM CHAR(10),SFZ CHAR(18),LXDZ CHAR(25),LXDH CHAR(10)ASINSERT INTO 客户 VALUES (KHB,KFM,SFZ,LXDZ,LXDH)go-客户信息修改的存储过程-CREATE PROCEDURE 修改客户信息(KHB CHAR(8),KFM CHAR(10),SFZ CHAR(18),LXDZ CHAR(25),LXDH CHAR(10)ASUPDATE 客户SET 客户名称=KFM,身份证号=SFZ,联系地址=LXDZ,联系电话=LXDHWHERE 客户编号=KHBGO-客户信息删除的存储过程-CREATE PROCEDURE 删除客户信息(KHB CHAR(8)ASDELETEFROM 客户WHERE 客户编号=KHBgo-入住信息插入的存储过程-CREATE PROCEDURE 插入入住信息(KFB CHAR(8), KHB CHAR(8), YDRQ DATETIME,YDSL INT)ASINSERT INTO 入住登记 VALUES(KFB,KHB,YDRQ,YDSL)go-入住信息修改的存储过程-CREATE PROCEDURE 修改入住信息(KFB CHAR(8), KHB CHAR(8), YDRQ DATETIME,YDSL INT)ASUPDATE 入住登记SET 客房编号=KFB,预定日期=YDRQ ,预定数量=YDSLWHERE 客户编号=KHBgo-入住信息删除的存储过程-CREATE PROCEDURE 删除入住信息(KHB CHAR(8)ASDELETE FROM 入住登记WHERE 客户编号=KHBgo-客房编号查询的存储过程-if exists (select * from sysobjects where name='客房编号查询')drop procedure 客房编号查询GOCREATE PROCEDURE 客房编号查询(KFB CHAR(8)ASSELECT 客房类型,价格,床位数,使用状态FROM 客房WHERE 客房编号=KFBgo-客户编号查询的存储过程-if exists (select * from sysobjects where name='客户编号查询')drop procedure 客户编号查询GOCREATE PROCEDURE 客户编号查询(KHB CHAR(8)ASSELECT 客户编号,客户名称,身份证号,联系地址,联系电话FROM 客户WHERE 客户编号=KHBgo-入住信息查询的存储过程-if exists (select * from sysobjects where name='入住客户编号查询')drop procedure 入住客户编号查询GOCREATE PROCEDURE 入住客户编号查询( KHB CHAR(8)ASSELECT 客户编号,客房编号,预定日期,预定数量FROM 入住登记WHERE 客户编号=KHB专心-专注-专业

    注意事项

    本文(酒店管理系统设计-数据库课程设计(共14页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开