版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库酒店管理系统课程设计(基于SQL server 2000实现过程1.1 通过查询分析器实现建立数据库、数据表-创建数据库和数据表-(1创建酒店管理系统数据库CREATE DATABASE 酒店管理系统(2创建客房信息表CREATE TABLE 客房(客房编号CHAR(8 PRIMARY KEY,客房类型CHAR(8NOT NULL,价格SMALLMONEY NOT NULL,床位数INT NOT NULL,使用状态CHAR(8 NOT NULLINSERT INTO 客房V ALUES('101','一',100,1,'在使用'INSERT
2、 INTO 客房V ALUES('102','二',200,2,'在使用'INSERT INTO 客房V ALUES('103','二',200,1,'在使用'INSERT INTO 客房V ALUES('104','三',300,2,'在使用'INSERT INTO 客房V ALUES('105','三',300,1,'未使用'(3创建客户信息表CREATE TABLE 客户(客户编号CHAR(8PRI
3、MARY KEY,客户名称CHAR(10NOT NULL,身份证号CHAR(18NOT NULL,联系地址CHAR(25,联系电话CHAR(10INSERT INTO 客户V ALUES('1001','王一',12234,'江西','3245354'INSERT INTO 客户V ALUES('1002','张三',34234,'江西','2442442'INSERT INTO 客户V ALUES('1003','李四',56465,
4、'江西','5654645'INSERT INTO 客户V ALUES('1004','王钱',65435,'江西','5676577'INSERT INTO 客户V ALUES('1005','孙志',11464,'江西','4234343'(4创建入住登记表CREATE TABLE 入住登记(客房编号CHAR(8FOREIGN KEY REFERENCES 客房(客房编号, 客户编号CHAR(8FOREIGN KEY REFEREN
5、CES 客户(客户编号, 预定日期DATETIME,预定数量INT,PRIMARY KEY(客房编号,客户编号INSERT INTO 入住登记V ALUES('101','1001',2010-10-10,1INSERT INTO 入住登记V ALUES('102','1002',2010-12-10,1INSERT INTO 入住登记V ALUES('103','1003',2010-12-26,1INSERT INTO 入住登记V ALUES('104','1004
6、9;,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 入住登记
7、.客户编号=客户.客户编号-建立索引- 1.3建立索引及数据入库1.建立客房编号,价格,客户编号,客户名称的索引创建客房表索引:CREATE UNIQUE INDEX UKF ON 客房(客房编号,价格创建客户表索引:CREATE UNIQUE INDEX UKH ON 客户(客户编号,客户名称创建入住表索引:CREATE UNIQUE INDEX URZ ON 入住登记(客户编号,客房编号2.数据入库方法一酒店管理系统包括客房信息表,客户信息表,入住登记信息表。采用Excel中录入数据,然后使用SQL Server 2000数据导入、导出功能直接将数据导入到相应的基本表。方法二在查询分析器中
8、插入相关数据,用SQL语句插入。-创建存储过程- 1.4建立存储过程插入客房信息存储过程:CREATE PROCEDURE 插入客房信息(KFB CHAR(8,KFL CHAR(8,JG SMALLMONEY,CWS INT,SYZT CHAR(8ASINSERT INTO 客房V ALUES (KFB,KFL,JG,CWS,SYZT修改客房信息存储过程:CREATE PROCEDURE 修改客房信息(KFB CHAR(8,KFL CHAR(8,JG SMALLMONEY,CWS INT,SYZT CHAR(8ASUPDATE 客房SET 客房类型=KFL,价格=JG,床位数=CWS,使用状态
9、=SYZTWHERE 客房编号=KFB删除客房信息存储过程:CREATE PROCEDURE 删除客房信息(KFB CHAR(8ASDELETE FROM 客房WHERE 客房编号=KFB插入客户信息CREATE PROCEDURE 插入客户信息(KHB CHAR(8,KFM CHAR(10,SFZ CHAR(18,LXDZ CHAR(25,LXDH CHAR(10ASINSERT INTO 客户V ALUES (KHB,KFM,SFZ,LXDZ,LXDH修改客户信息CREATE PROCEDURE 修改客户信息(KHB CHAR(8,KFM CHAR(10,SFZ CHAR(18,LXDZ
10、CHAR(25,LXDH CHAR(10ASUPDATE 客户SET 客户名称=KFM,身份证号=SFZ,联系地址=LXDZ,联系电话=LXDH WHERE 客户编号=KHB删除客户信息CREATE PROCEDURE 删除客户信息(KHB CHAR(8ASDELETEFROM 客户WHERE 客户编号=KHBEXEC 删除客户信息KHB='10009'插入入住信息CREATE PROCEDURE 插入入住信息(KFB CHAR(8,KHB CHAR(8,YDRQ DATETIME,YDSL INTASINSERT INTO 入住登记V ALUES(KFB,KHB,YDRQ,Y
11、DS L修改入住信息CREATE PROCEDURE 修改入住信息(KFB CHAR(8,KHB CHAR(8,YDRQ DATETIME,YDSL INTASUPDATE 入住登记SET 客房编号=KFB,预定日期=YDRQ ,预定数量=YDSL WHERE 客户编号=KHB删除入住信息CREATE PROCEDURE 删除入住信息(KHB CHAR(8ASDELETEFROM 入住登记WHERE 客户编号=KHB1.5查询存储过程的创建客房编号查询CREATE PROCEDURE 客房编号查询(KFB CHAR(8,KFL CHAR(8OUTPUT,JG SMALLMONEY OUTPUT
12、,CWS INT OUTPUT,SYZT CHAR(8OUTPUTASSELECT KFL=客房类型,JG=价格,CWS=床位数,SYZT=使用状态FROM 客房WHERE 客房编号=KFB客户编号查询CREATE PROCEDURE 客户编号查询(KHB CHAR(8,KFM CHAR(10OUTPUT ,SFZ CHAR(18OUTPUT,LXDZ CHAR(25OUTPUT,LXDH CHAR(10OUTPUTASSELECT KFM=客户名称,SFZ=身份证号,LXDZ=联系地址,LXDH=联系电话FROM 客户WHERE 客户编号=KHB入住客户编号查询CREATE PROCEDUR
13、E 入住客户编号查询(KFB CHAR(8OUTPUT,KHB CHAR(8,YDRQ DATETIME OUTPUT,YDSL INT OUTPUTASSELECT KFB=客房编号,YDRQ=预定日期,YDSL=预定数量FROM 入住登记WHERE 客户编号=KHB-建立触发器- 1.6、建立触发器保证数据的一致性客房使用状态的控制CREATE TRIGGER 控制触发器ON 入住登记FOR INSERTASUPDATE 客房SET 使用状态='使用中'WHERE 客房编号=ANY (SELECT 客房编号FROM INSERTED 控制入住信息删除的触发器CREATE T
14、RIGGER 入住删除触发器ON 入住登记FOR DELETEASBEGINDELETEFROM 客户WHERE 客户编号=ANY (SELECT 客户编号FROM DELETED UPDATE 客房SET 使用状态='未使用'WHERE 客房编号=ANY(SELECT 客房编号FROM DELETED END客户信息删除的控制CREATE TRIGGER 客户删除触发器ON 客户FOR DELETEASBEGINDELETEFROM 入住WHERE 客户编号=ANY (SELECT 客户编号FROM DELETED UPDATE 客房SET 使用状态='未使用'
15、;WHERE 客房编号=ANY(SELECT 客房编号FROM DELETED END客房删除触发器CREATE TRIGGER 客房删除触发器ON 客房FOR DELETEASDELETEFROM 入住WHERE 客户编号=ANY (SELECT 客户编号FROM DELETED 酒店管理系统数据库脚本-数据库初始化-set nocount onset dateformat mdygouse mastergoif exists(select * from sysdatabases where name='酒店管理系统' /*删除在master中已存*/ /*在的名为酒店管理系
16、统的数据库*/drop database 酒店管理系统go-酒店管理系统的建立-create database 酒店管理系统on primary /*设定系统主文件*/(name='酒店管理系统_data',filename='d:酒店管理系统.mdf',size=10,maxsize=50,filegrowth=5log on /*创建事务日志文件*/(name='酒店管理系统_log',filename='d:酒店管理系统.ldf',size=5,maxsize=25,filegrowth=5go-(注:删除查询分析器中的以上
17、代码后,运行以下代码-建立信息表-use 酒店管理系统if exists(select * from sysobjects where name='客户'drop table 客户goprint 'drop table 客户'print 'create table 客户'go/*客户信息表*/CREATE TABLE 客户/*创建客户信息表*/(客户编号CHAR(8PRIMARY KEY,客户名称CHAR(10NOT NULL,身份证号CHAR(18NOT NULL,联系地址CHAR(25,联系电话CHAR(10go-插入客户数据-INSERT
18、INTO 客户V ALUES('1001','王一',12234,'江西','3245354' INSERT INTO 客户V ALUES('1002','张三',34234,'江西','2442442' INSERT INTO 客户V ALUES('1003','李四',56465,'江西','5654645' INSERT INTO 客户V ALUES('1004','王钱
19、39;,65435,'江西','5676577' INSERT INTO 客户V ALUES('1005','孙志',11464,'江西','4234343'-if exists(select * from sysobjects where name='客房'drop table 客房goprint 'drop table 客房'print 'create table 客房'go/*客房信息表*/CREATE TABLE 客房/*创建客房信息表*/(客
20、房编号CHAR(8 PRIMARY KEY,客房类型CHAR(8NOT NULL,价格SMALLMONEY NOT NULL,床位数INT NOT NULL,使用状态CHAR(8 NOT NULLgo-插入客房数据-INSERT INTO 客房V ALUES('101','一',100,1,'使用中'INSERT INTO 客房V ALUES('102','二',200,2,'使用中'INSERT INTO 客房V ALUES('103','二',200,1,'
21、;使用中'INSERT INTO 客房V ALUES('104','三',300,2,'使用中'INSERT INTO 客房V ALUES('105','三',300,1,'使用中'-if exists(select * from sysobjects where name='入住登记'drop table 入住登记goprint 'drop table 入住登记'print 'create table 入住登记'go/*入住登记信息表*/CR
22、EATE TABLE 入住登记/*创建入住登记信息表*/(客房编号CHAR(8FOREIGN KEY REFERENCES 客房(客房编号, 客户编号CHAR(8FOREIGN KEY REFERENCES 客户(客户编号,预定日期DATETIME,预定数量INT,PRIMARY KEY(客房编号,客户编号go-插入入住登记信息数据-INSERT INTO 入住登记V ALUES('101','1001',2010-10-10,1INSERT INTO 入住登记V ALUES('102','1002',2010-12-10,1IN
23、SERT INTO 入住登记V ALUES('103','1003',2010-12-26,1INSERT INTO 入住登记V ALUES('104','1004',2010-12-9,1go-建立索引-CREATE UNIQUE INDEX UKF ON 客房(客房编号,价格goCREATE UNIQUE INDEX UKH ON 客户(客户编号,客户名称goCREATE UNIQUE INDEX URZ ON 入住登记(客户编号,客房编号go-建立触发器- -建立控制触发器(保证在客房使用状态的一致性-if exists (
24、select * from sysobjects where name='控制触发器'drop trigger 控制触发器GOCREATE TRIGGER 控制触发器ON 入住登记FOR INSERTASUPDATE 客房SET 使用状态='使用中'WHERE 客房编号=ANY (SELECT 客房编号FROM INSERTED go-建立入住删除触发器(保证信息删除的一致性-if exists (select * from sysobjects where name='入住删除触发器'drop trigger 入住删除触发器GOCREATE T
25、RIGGER 入住删除触发器ON 入住登记FOR DELETEASBEGINDELETE FROM 客户 WHERE 客户编号=ANY (SELECT 客户编号 FROM DELETED UPDATE 客房 SET 使用状态='未使用' WHERE 客房编号=ANY(SELECT 客房编号 FROM DELETED END go -建立客房删除触发器(保证删除的一致性)-if exists (select * from sysobjects where name='客房删除触发器' drop trigger 客房删除触发器 GO CREATE TRIGGER 客
26、房删除触发器 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
27、 SMALLMONEY, CWS INT, SYZT CHAR(8 AS INSERT INTO 客房 VALUES (KFB,KFL,JG,CWS,SYZT GO -客房信息修改的存储过程- CREATE PROCEDURE 修改客房信息 (KFB CHAR(8, KFL CHAR(8, JG SMALLMONEY, CWS INT, SYZT CHAR(8 AS UPDATE 客房 SET 客房类型=KFL,价格=JG,床位数=CWS,使用状态=SYZT WHERE 客房编号=KFB go -客房信息删除的存储过程-CREATE PROCEDURE 删除客房信息 (KFB CHAR(8 A
28、S DELETE FROM 客房 WHERE 客房编号=KFB GO -客户信息插入的存储过程-CREATE PROCEDURE 插入客户信息 (KHB CHAR(8, KFM CHAR(10, SFZ CHAR(18, LXDZ CHAR(25, LXDH CHAR(10 AS INSERT 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 AS UPDATE 客户 SET 客户名称=KFM,身份证号=SFZ,联系地址=LXDZ,联系电话=LXDH WHERE 客户编号=KHB GO -客户信息删除的存储过程- CREATE PROCEDURE 删除客户信息 (KHB CHAR(8 AS DELETE FROM 客户 WHERE 客户编号=KHB go -入住信息插入的存储过程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度安全环保施工材料供应与质量检测合同
- 2024年工程建设项目合同争议案例解析与风险防控
- 2024年店铺联合经营合同
- 2024年工程项目管理与运营合同
- 2024年度能源供应与采购合同
- 2024年应急运输承包经营合同
- 2024两人合作协议合同范本
- 2024年度氨水供应链优化与集中采购合同
- 2024股权转让合同核心条款有些
- 2024年度融资租赁合同标的租赁物详情
- YY∕T 0314-2021 一次性使用人体静脉血样采集容器
- 第五章 种内与种间关系
- 后进生家长会课件
- BEC口语Part-2-题集(整理自BEC口语书)
- 8D培训课件(共43页).ppt
- 如何正确理解五常政大论
- 第八讲 地形图应用(二)
- 普铁避雷器检修作业指导书
- 下水管道施工合同通用版
- 铁合金生产工艺
- 钢结构策划书(范本)
评论
0/150
提交评论