数据库课设---酒店管理系统(MySQL、VBNet)

news2024/9/23 23:34:02

目录

一.   知识技术

二.   需求分析

2.1   功能需求

2.2   数据需求

 三.   数据流图与数据字典

3.1   数据流图

3.1.1   业务流图

3.1.2   数据流图

3.1.3   关系图

3.2   数据字典

四.   数据库设计 

4.1   概念模型设计

4.2   逻辑模型设计

4.3   数据库实现

4.4   导入数据

4.5   视图创建与展示

五.   利用VBNET语言进行页面设计



一.   知识技术

  1. 数据库管理系统(DBMS)基础:数据库管理系统是酒店客房管理系统的核心,负责存储、检索、更新和管理客房信息。它提供了数据定义、数据操作和数据控制等功能,确保数据的完整性、安全性和可靠性。
  2. 关系型数据库理论:关系型数据库是当前应用最广泛的数据库类型之一,它通过表、行和列来组织数据,并使用SQL(结构化查询语言)进行数据操作。关系型数据库具有数据结构化、数据共享性高、数据独立性好等优点,非常适合用于酒店客房管理系统的数据存储。
  3. 数据库设计原则:数据库设计是酒店客房管理系统开发的关键环节,它涉及到数据的逻辑结构、物理结构以及数据的安全性和完整性等方面。在设计过程中,需要遵循规范化设计原则,确保数据的合理组织和有效存储。

二.   需求分析

2.1   功能需求

本系统实现的功能具体如下:

  1. 1、信息管理:可以对于各种信息的查询,个人信息可以查看自己的私人信息,还可以对自己的私人信息进行修改。用户信息查看用户的个人信息,对用户的信息进行增删改查。
  2. 2、客户信息管理:可以新建客户,输入客户的身份证号码、姓名、性别、和手机号等信息,可以对于客户的信息进行相应的修改。
  3. 3、客房信息管理:可以在相应的房间类型下面进行添加相应的房间,对相应的房间进行删除, 查看空房以及客房的情况。
  4. 4、入住和退房管理:客户可以入住相应的类型房型下的空房,然后可以退房,系统自动将相应的订单状态置为失效,入住状态置为己退房,将相应房间的状态置为空房。
  5. 5、费用管理:管理员、工作人员都可以查看相应的费用信息,管理员有需要时可以对宾馆的收入与支出进行查询或修改。
  6. 6、价目信息管理:可以查看客房的收费标准,管理员可以对客房价格进行查询与修改,工作人员可以查看客房的价目信息。
  7. 7、物品信息管理:可以查看客房的物品名称,物品状态是否使用,对物品进行查询。

2.2   数据需求

酒店客房管理系统的数据需求包括如下几点:

  1. 1)数据录入和处理的准确性和实时性
  2.  数据的输入是否准确是数据处理的前提,错误的输入会导致系统无法正常识别进而导致输出的不正确,从而是系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性。。
  3. 2)数据的一致性与完整性
  4. 由于系统的数据是共享的,在不同的客户端中,客房信息是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有后台数据库的支持。

 三.   数据流图与数据字典

3.1   数据流图

3.1.1   业务流图

3.1.2   数据流图

 

3.1.3   关系图

3.2   数据字典

客户表

字段

中文解释

类型

约束

备注

cno

客户编号

Char(20)

Not null

Primary key

cname

客户姓名

Char(10)

Not null

csex

客户性别

Char(2)

Not null

cid

客户手机号

Char(20)

Not null

客房表

字段

中文解释

类型

约束

备注

Rno

客房编号

Char(20)

Not null

Primary key

Rstyle

客房类型

Char(10)

Not null

Rprice

客房价格

Int

Not null

Rstate

客房状态

Char(10)

Not null

Living表

字段

中文解释

类型

约束

备注

Cno

客户编号

Char(20)

Not null

Primary key

Ccomedate

入住日期

Datetime

Not null

Cleftdate

离开日期

Datetime

Not null

Rno

客房编号

Int

Not null

Ctime

入住时间

Int

Not null

Camount

费用

Int

Not null

管理员表

字段

中文解释

类型

约束

备注

Ano

管理员编号

Char(10)

Not null

Primary key

Aname

管理员姓名

Char(10)

Not null

Asex

管理员性别

Char(2)

Not null

Apassword

登录密码

Char(20)

Not null

物品表

字段

中文解释

类型

约束

备注

Rno

客房号

Char(20)

Not null

Ritemno

物品号

Int

Not null

Primary key

Ritemstate

物品状态

Char(10)

Not null

Ritemname

物品名称

Char(20)

Not null

四.   数据库设计 

4.1   概念模型设计

E-R图(实体-关系图)提供了表示实体、属性和联系的方法。

(1)  实体型 :用矩形表示,矩形框内写明实体名

(2)  属性:用椭圆型表示,并用无向边与其相应实体连接起来

(3)  联系:用菱形表示,菱形框内写明联系名,并用无向边与其有关实体连接。

本系统采用E-R图的方法进行数据库概念结构设计,系统E-R图如下所示:

客户实体图

 

客房实体图

管理员实体图

物品实体图

全局E-R图

4.2   逻辑模型设计

将E-R图转换成关系模式:

客房(客房号,客房类型,客房状态,客房单价)

客户(客户编号,姓名,性别,手机号)

管理员(员工号,姓名,性别,密码)

物品(客房号,物品名称,物品状态)

入住(客房号,入住时间,退房时间,住宿费用)

4.3   数据库实现

创建数据库各表

4.4   导入数据

此处数据是自己创建execl填入的,数据项不是很多。

4.5   视图创建与展示

(1)查询客户(customers)信息的视图定义如下。

Create view view_ customers (客户编号,客户姓名,客户性别,客户手机号)

As  select  cno,cname,csex,cid

From   customers

(2)查询客房(rooms)信息的视图定义如下。

Create view view_rooms (客房号,客房类型,客房价格,客房状态)

As  select  rno, rstyle, rprice, rstate

From   rooms

(3)查询客户住宿(living)信息的视图如下。

Create view view_living (客户编号,客房号,入住日期,离开日期,入住时间,费用)

As  select  cno,rno,ccomedate,cleftdate,ctime,camount

From   living

(4)查询客房物品(roomitem)信息的视图定义如下。

Create  view  view_roomitem(客房号,客房物品编号,客房物品名称,物品状态)

As  select  rno,,ritemno,ritemname,ritemstate

From   roomitem

创建索引

创建触发器

当在客房表中加入一条信息后显示“已占”表示有客户入住,当在客房表中删除一条信息后显示“已退”表示客户离开。

USE [hotel]

GO

Trigger [dbo].[roomsstatus_update]  

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[roomsstatus_update]

on [dbo].[rooms]

for update

as

declare @rno varchar(20),

@istf varchar(20)

select @istf=istf from ccomedate

where rno=@rno;

if @istf<>'已退'

begin

update rooms

set rstate='已占'

where rno=@rno

end;

if @istf='已退'

begin

update rooms

set rstate='空闲'

where rno=@rno

end;

创建客户表的触发器,当增加或删除一条信息时显示所有此表中信息。

存储过程

create procedure [dbo].[Query_totalruzhushijian_feiyong]

       @ccomedate datetime,

       @cleftdate datetime,

       @rstyle varchar(10)

       as

       select sum(datediff(S,addtime,cleftdate)) as ctime,sum(rprice) as 费用合计 from living

       where addtime>= ltrim(@ccomedate) and cleftdate<=ltrim(@ctime) and rstyle=@rstyle

       group by rstyle;

--drop procedure Query_totalruzhushijian_feiyong;

GO

五.   利用VBNET语言进行页面设计

此处只是利用VBNET语言进行简单的模块搭建,并没有实现前端设计。

页面展示:

可以看见能直接对住房人员的需求进行操作:

(1)添加新住户

(2)预定房间

 代码:(此处代码繁多,只截取主代码,剩下的都是粘贴这个管理系统的图片)

(此处为链接数据库代码)


好了今日分享到此结束,大家需要源码的话可以后台call我哟!也请各位佬指出不足! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1906347.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【LSB图像低位隐写】字符串隐写

按照自己的理解写了一个简单的字符串隐藏在图像中的python代码 前言 脱胎于内容安全的大作业~ 目前第一阶段&#xff0c;只完成了字符串隐藏在图像中 步过图像隐藏在图像应该异曲同工&#xff0c;之后实现~ 一、代码 图像的output路径和input路径写死了&#xff0c;这个需要…

【SpringBoot】IDEA查看spring bean的依赖关系

前因&#xff1a;研究springcloud config组件时&#xff0c;我发现config-server包下的EnvironmentController不在扫描的包路径下却可以响应客户端的请求&#xff0c;这引起了我的注意&#xff0c;我的问题是&#xff1a;EnvironmentController是怎么被添加进bean工厂的。本章就…

联系表单提交Contact Form自动发送邮件源码

联系表单Contact Form提交后自动发送邮件源码构建指南&#xff1f; 无论是商业网站、博客还是个人主页&#xff0c;几乎每个网站都会有一个联系表单&#xff0c;用于收集用户的反馈、询问或建议。AokSend将探讨联系表单在网站中的重要性&#xff0c;以及如何通过源码实现自动发…

新加坡工作和生活指北:工作篇

文章首发于公众号&#xff1a;Keegan小钢 一年多以前&#xff08;2022 年 8 月初&#xff09;&#xff0c;那时我过来新加坡才 4 个多月&#xff0c;就写了篇文章分享了当时在新加坡的生活和工作体验。文章得到的反响不错&#xff0c;但也反馈出了一些新的问题&#xff0c;比如…

【数据结构】栈的实现(含详细代码)

文章目录 1.栈1.1 栈的概念及结构1.2 栈的实现1.3 代码实现 1.栈 1.1 栈的概念及结构 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶&#xff0c;另一端称为栈底。栈中的数据元素遵守先进后…

如何监控和优化 PostgreSQL 中的连接池使用?

文章目录 一、连接池的基本概念二、监控 PostgreSQL 连接池使用的重要性&#xff08;一&#xff09;性能优化&#xff08;二&#xff09;资源管理&#xff08;三&#xff09;故障排查 三、PostgreSQL 连接池监控指标&#xff08;一&#xff09;活跃连接数&#xff08;二&#x…

下一代 CSS 框架:Mojo CSS

前言 Tailwind CSS 推出即受到广大开发者的欢迎&#xff0c;当前 Github star 数已达 77.8k。它是一个功能类优先&#xff08;utility-first&#xff09;的 CSS 框架&#xff0c;它提供了一系列功能类&#xff0c;让开发者可以在 HTML 中通过组合这些功能类&#xff08;原子类…

阶段三:项目开发---大数据开发运行环境搭建:任务3:安装配置Hadoop集群

任务描述 知识点&#xff1a;安装配置Hadoop 重 点&#xff1a; 安装配置Hadoop 难 点&#xff1a;无 内 容&#xff1a; Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下&#xff0c;开发分布式程序。充分利用集群的威…

Flink 提交作业的方式

参考&#xff1a; Flink运行方式及对比-腾讯云开发者社区-腾讯云

前端程序员如何转大模型?收藏这一篇就够了(非常详细)

最近各行各业都不容易啊&#xff0c;那个中金女员工跳楼事件频繁上热点&#xff0c;引起广泛的关注&#xff0c;本质上还是经济下行&#xff0c;我们互联网行业也是如此&#xff0c;特别是程序员&#xff0c;本来就有35岁危机&#xff0c;加上行业不景气&#xff0c;大厂都在裁…

C语言中的数组:掌握数据的有序集合【一维数组,二维数组,字符串数组,直方图打印,计算全排列,字符数组常用函数】

目录 C语言中的数组&#xff1a;掌握数据的有序集合【一维数组&#xff0c;二维数组&#xff0c;字符串数组】一维数组一维数组的创建数组的七种初始化完全初始化&#xff1a;部分初始化&#xff1a;字符数组的初始化&#xff1a;自动初始化为0&#xff1a;使用memset函数初始化…

C语言求10进制转2进制(除2取余法)

1.思路&#xff1a;除2取余法&#xff0c;也就是说用除以2取余来将10进制数转换为二进制 2.两种代码实现&#xff0c;这里用了两&#xff0c;一个递归一个非递归。 递归是一种编程技术&#xff0c;其中一个函数直接或间接地调用自己。递归通常用于解决那些可以被分解为更小的、…

QCC5181 歌词歌曲名多国语言显示替代QCC5125 CSR8675

QCC518X作为Qualcomm新一代蓝牙技术芯片&#xff0c;支持最新蓝牙协议V5.4&#xff0c;较QCC512X系列&#xff0c;它有更强大的DSP、CPU。除支持USB、I2S、SPDIF等接口外&#xff0c;还扩展了LE Audio功能&#xff0c;扩展支持AptX Lossless。以5181为例&#xff0c;我们还扩展…

Pandas 学习笔记(四)--CSV文件

CSV文件 CSV&#xff08;Comma-Separated Values&#xff0c;逗号分隔值&#xff0c;有时也称为字符分隔值&#xff0c;因为分隔字符也可以不是逗号&#xff09;&#xff0c;其文件以纯文本形式存储表格数据&#xff08;数字和文本&#xff09;。 读取与写入 读取csv文件 i…

智能充电(新能源电动车,电单车)云管理系统的定制解决方案

一 系统简介 智能充电&#xff08;新能源电动车&#xff0c;电单车&#xff09;云管理系统 是一套能够实现对充电站/桩的实时通讯、状态监控、故障检测、运营分析、数据统计、策略设置的智能化多任务管理系统。 二 平台概览 智能充电云管理系统 https://chongdianzhuang.itg…

C# CvDnn部署CoupledTPS实现旋转图像矫正

C# CvDnn部署CoupledTPS实现旋转图像矫正 目录 说明 效果 模型信息 项目 代码 下载 说明 TPAMI2024 - Semi-Supervised Coupled Thin-Plate Spline Model for Rotation Correction and Beyond github地址&#xff1a;https://github.com/nie-lang/CoupledTPS 代码实现…

【SpringCloud应用框架】Nacos命名空间、分组和DataID三者关系

第五章 Spring Cloud Alibaba Nacos之命名空间、分组和DataID三者关系 文章目录 一、名词解释三者关系 二、切换不同环境DataID方案Group方案Namespace空间方案 一、名词解释 命名空间&#xff08;Namespace&#xff09; ​用于进行租户粒度的配置隔离。不同的命名空间下&…

C++ 智能指针使用不当导致内存泄漏问题

shared_ptr相互嵌套导致循环引用 代码示例 #include <iostream> #include <memory> using namespace std;class B;class A { public:std::shared_ptr<B> b_ptr;~A() { std::cout << "A destroyed\n"; } };class B { public:std::shared_pt…

优选算法之技巧(一):双指针一:移位0与复写0

引用&#xff1a;我们之前学过快排&#xff0c;首先用三元取中&#xff0c;找(key)&#xff0c;然后就用到了双指针的方法来进行交换排序&#xff0c;那我们今天要讲的双指针其实大同小异&#xff0c;无非在数组中就变成了下标。 题一&#xff1a; 给定一个数组 nums&#xf…

云平台教程 | 手把手教你主成分分析PCA的可视化

爱基百客云平台小工具使用 1.1 爱基百客云平台之PCA分析 1.2 PCA分析原理 1.3 参数设置 1.4 任务查看 1.5 结果 1.5.1 PCA图 01 爱基百客云平台小工具使用 首先&#xff0c;打开爱基百客官网&#xff1a;http://www.igenebook.com&#xff1b;点击菜单栏最右侧“云平台”按钮…