软件工程课程设计之酒店管理系统的设计与实现

这是一个简化的酒店管理系统的需求分析文档、系统设计文档、测试文档的结构概述,以及部分实现阶段的代码示例。详细设计阶段的数据字典、ER图、模块分类图将以文字描述形式给出,而完整的代码未完全实现。这里只做软件工程部分的设计需求说明哈~~

有什么漏洞洞,还请友友们评论区发言~

# 需求分析文档
一、项目背景

随着旅游业的快速发展,酒店行业对于高效、便捷的管理系统需求日益增加。本项目旨在开发一套基于Java和MySQL的酒店管理系统,以满足酒店日常运营管理的需求。

二、功能需求

用户管理:包括管理员和员工的登录、注册、权限管理等。
客房管理:包括客房信息的录入、查询、修改、删除等。
预订管理:包括客人预订、取消预订、预订查询等。
入住管理:包括客人入住登记、退房结算等。
报表统计:包括客房销售统计、客人入住统计等。
三、非功能需求

系统性能:保证高并发处理能力,响应速度快。
系统安全:对用户数据进行加密存储,防止数据泄露。
系统易用性:界面友好,操作简便。
系统设计文档
一、系统架构

采用B/S架构,前后端分离。前端使用HTML/CSS/JavaScript构建,后端使用Java(Spring Boot框架)开发,数据库采用MySQL。

二、模块划分

用户管理模块
客房管理模块
预订管理模块
入住管理模块
报表统计模块
三、数据库设计

ER图(概念性描述):

用户表(用户ID、用户名、密码、角色等)
客房表(客房ID、客房类型、价格、状态等)
预订表(预订ID、客人信息、客房ID、入住日期、离店日期等)
入住记录表(入住ID、客人信息、客房ID、入住时间、退房时间等)
四、详细设计

数据字典(部分示例):

一、用户管理模块
用户表 (Users)

用户ID (UserID): 主键,自增整数
用户名 (Username): 字符串,非空,唯一
密码 (Password): 字符串,加密存储
姓名 (Name): 字符串,可空
邮箱 (Email): 字符串,唯一,用于找回密码
联系电话 (PhoneNumber): 字符串,可空
角色 (Role): 字符串,如 "admin", "staff", "guest" 等
创建时间 (CreateTime): 时间戳,记录用户创建时间
最后登录时间 (LastLoginTime): 时间戳,记录用户最后登录时间
状态 (Status): 枚举或布尔值,表示用户是否激活或禁用
二、客房管理模块
客房表 (Rooms)

客房ID (RoomID): 主键,自增整数
客房号 (RoomNumber): 字符串,唯一,如 "101", "202" 等
客房类型 (RoomType): 字符串,如 "单人间", "双人间", "套房" 等
价格 (Price): 浮点数,表示客房的日租价格
状态 (Status): 枚举值,如 "空闲", "已预订", "已入住" 等
楼层 (Floor): 整数,表示客房所在的楼层
面积 (Area): 浮点数,表示客房的面积
描述 (Description): 文本,用于描述客房的设施或特点
三、预订管理模块
预订表 (Reservations)

预订ID (ReservationID): 主键,自增整数
预订人姓名 (GuestName): 字符串,可空,如未填写则为空
联系电话 (ContactPhone): 字符串,可空
邮箱 (Email): 字符串,可空,用于发送预订确认信息
客房ID (RoomID): 外键,引用客房表的主键
入住日期 (CheckInDate): 日期,表示客人入住的日期
离店日期 (CheckOutDate): 日期,表示客人离店的日期
预订状态 (Status): 枚举值,如 "待确认", "已确认", "已取消" 等
备注 (Remarks): 文本,用于记录预订的额外信息或特殊要求
四、入住管理模块
入住记录表 (CheckIns)

入住ID (CheckInID): 主键,自增整数
客房ID (RoomID): 外键,引用客房表的主键
入住人姓名 (GuestName): 字符串,非空
联系电话 (ContactPhone): 字符串,非空
入住时间 (CheckInTime): 时间戳,记录客人实际入住的时间
退房时间 (CheckOutTime): 时间戳,记录客人实际退房的时间
押金 (Deposit): 浮点数,表示客人入住时缴纳的押金
结算金额 (SettlementAmount): 浮点数,表示客人退房时应付的总金额
五、报表统计模块
报表统计模块通常不会直接对应到某个具体的表,而是通过查询和聚合多个表的数据来生成报表。但是,如果需要存储一些报表的中间结果或历史数据,可以创建一个专门的报表数据表。

报表数据表 (ReportData)

报表ID (ReportID): 主键,自增整数
报表类型 (ReportType): 字符串,表示报表的类型或名称
报表数据 (ReportData): JSON、BLOB或其他数据结构,用于存储报表的具体数据
创建时间 (CreateTime): 时间戳,记录报表数据的创建时间


测试文档
一、测试目的

验证酒店管理系统的功能是否满足需求,性能是否达标,是否存在安全漏洞等。

二、测试范围

功能测试:测试各模块的功能是否按预期工作。
性能测试:测试系统的响应时间、并发处理能力等。
安全测试:测试系统的数据安全性、用户权限控制等。
三、测试用例

一、用户管理模块测试用例
1. 用户注册测试用例

用例标题:新用户注册功能测试
前置条件:无
测试步骤:
打开用户注册页面。
输入用户名、密码、邮箱等必要信息。
点击注册按钮。
预期结果:
系统应验证输入信息的完整性和有效性。
如果信息完整且有效,应成功创建用户账号,并跳转到登录页面或显示注册成功信息。
如果信息不完整或无效,应显示相应的错误提示。
2. 用户登录测试用例

用例标题:用户登录功能测试
前置条件:已存在有效用户账号
测试步骤:
打开用户登录页面。
输入正确的用户名和密码。
点击登录按钮。
预期结果:
系统应验证用户名和密码的正确性。
如果用户名和密码正确,应成功登录并跳转到系统主页或用户中心。
如果用户名或密码错误,应显示相应的错误提示。
二、客房管理模块测试用例
1. 客房信息查询测试用例

用例标题:客房信息查询功能测试
前置条件:系统已录入客房信息
测试步骤:
打开客房管理页面。
输入查询条件(如客房号、客房类型等)。
点击查询按钮。
预期结果:
系统应根据查询条件返回符合条件的客房信息列表。
列表应包含客房号、客房类型、价格、状态等关键信息。
如果没有符合条件的客房,应显示相应的提示信息。
2. 客房状态更新测试用例

用例标题:客房状态更新功能测试
前置条件:存在某个特定状态(如空闲)的客房
测试步骤:
打开客房管理页面,并定位到目标客房。
点击更新状态按钮,选择新的状态(如已预订)。
确认更新操作。
预期结果:
系统应成功更新目标客房的状态。
更新后的客房状态应在页面中正确显示。
如果更新失败,应显示相应的错误提示。
三、预订管理模块测试用例
1. 预订创建测试用例

用例标题:预订创建功能测试
前置条件:存在空闲客房,用户已登录
测试步骤:
打开预订页面。
选择入住日期、离店日期、客房数量等信息。
点击预订按钮。
预期结果:
系统应验证用户输入的预订信息。
如果信息有效且有空闲客房,应成功创建预订并显示预订信息。
如果信息无效或没有空闲客房,应显示相应的错误提示。
2. 预订取消测试用例

用例标题:预订取消功能测试
前置条件:存在已创建的预订
测试步骤:
打开预订管理页面,并定位到目标预订。
点击取消按钮。
确认取消操作。
预期结果:
系统应成功取消目标预订。
取消后的预订状态应在页面中正确更新。
如果取消失败,应显示相应的错误提示。
 

四、测试

### JUnit测试

在Java中编写测试用例时,通常会使用JUnit这样的测试框架。以下是根据之前提到的测试用例示例,使用JUnit编写的Java测试用例代码:

1. 用户管理模块测试用例(JUnit)
用户注册测试用例

java
复制代码
import org.junit.jupiter.api.BeforeEach;  
import org.junit.jupiter.api.Test;  
import org.junit.jupiter.api.Assertions;  
import org.mockito.InjectMocks;  
import org.mockito.Mock;  
import org.mockito.MockitoAnnotations;  
  
// 假设你有一个UserService类来处理用户注册逻辑  
class UserService {  
    // 省略具体的实现细节  
    public boolean registerUser(String username, String password, String email) {  
        // 假设的注册逻辑  
        return true; // 这里只是示例,实际逻辑会更复杂  
    }  
}  
  
// 测试类  
class UserServiceTest {  
  
    @InjectMocks  
    private UserService userService;  
  
    @BeforeEach  
    void setUp() {  
        MockitoAnnotations.openMocks(this);  
    }  
  
    @Test  
    void testRegisterUserSuccess() {  
        // 安排(Arrange)  
        String username = "testUser";  
        String password = "password123";  
        String email = "test@example.com";  
  
        // 行动(Act)  
        boolean result = userService.registerUser(username, password, email);  
  
        // 断言(Assert)  
        Assertions.assertTrue(result, "User registration should succeed");  
    }  
  
    @Test  
    void testRegisterUserFailureDueToInvalidData() {  
        // 安排(Arrange)  
        String username = ""; // 假设用户名不能为空  
        String password = "password123";  
        String email = "test@example.com";  
  
        // 行动(Act)  
        boolean result = userService.registerUser(username, password, email);  
  
        // 断言(Assert)  
        Assertions.assertFalse(result, "User registration should fail due to invalid data");  
    }  
}
2. 客房管理模块测试用例(JUnit)
客房信息查询测试用例

java
复制代码
import org.junit.jupiter.api.Test;  
import org.junit.jupiter.api.Assertions;  
import org.mockito.InjectMocks;  
import org.mockito.Mock;  
import org.mockito.MockitoAnnotations;  
import java.util.List;  
  
// 假设你有一个RoomService类来处理客房信息查询逻辑  
class RoomService {  
    // 省略具体的实现细节  
    public List<Room> getRoomsByCriteria(String criteria) {  
        // 假设的查询逻辑  
        return null; // 这里只是示例,实际会返回房间列表  
    }  
  
    // Room类定义  
    static class Room {  
        // 省略字段和方法  
    }  
}  
  
// 测试类  
class RoomServiceTest {  
  
    @InjectMocks  
    private RoomService roomService;  
  
    @BeforeEach  
    void setUp() {  
        MockitoAnnotations.openMocks(this);  
    }  
  
    @Test  
    void testGetRoomsByCriteriaSuccess() {  
        // 安排(Arrange)  
        String criteria = "type=single"; // 假设查询条件为房间类型为单人间  
  
        // 这里应该模拟RoomService的依赖(如数据库访问),但由于示例简单,我们直接调用方法  
  
        // 行动(Act)  
        List<Room> rooms = roomService.getRoomsByCriteria(criteria);  
  
        // 假设这里rooms不为空,并且至少有一个房间  
        // 断言(Assert)  
        Assertions.assertNotNull(rooms, "Room list should not be null");  
        Assertions.assertFalse(rooms.isEmpty(), "Room list should not be empty");  
        // 可以继续添加针对返回的房间列表的断言  
    }  
  
    @Test  
    void testGetRoomsByCriteriaFailure() {  
        // 安排(Arrange)  
        String criteria = "invalidCriteria"; // 假设这是一个无效的查询条件  
  
        // 行动(Act)  
        List<Room> rooms = roomService.getRoomsByCriteria(criteria);  
  
        // 断言(Assert)  
        Assertions.assertNull(rooms, "Room list should be null for invalid criteria");  
        // 或者,如果逻辑是返回空列表而不是null,则应该断言列表为空  
    }  
}

 

 

### 工具测试:

 使用Postman测试后端API接口

 

1. **安装并启动Postman**:

   - 访问Postman官网下载并安装Postman。

   - 打开Postman并创建一个新的请求。

 

2. **设置请求**:

   - 在请求URL栏中输入API的URL。

   - 选择请求方法(GET、POST、PUT、DELETE等)。

   - 如果需要,添加请求头(如Content-Type、Authorization等)。

   - 在Body选项卡中添加请求体(对于POST、PUT请求)。

 

3. **发送请求**:

   - 点击“Send”按钮发送请求。

   - 在下方的“Body”或“Tests”选项卡中查看响应。

 

4. **添加断言**:

   - 在“Tests”选项卡中,可以添加断言来验证响应的状态码、内容等。

 

5. **保存并运行集合**:

   - 如果有多个请求,可以创建集合(Collections)并将它们保存。

   - 使用集合Runner来批量运行集合中的请求。

 

### 使用JMeter进行性能测试

 

1. **安装并启动JMeter**:

   - 访问JMeter官网下载并解压JMeter。

   - 打开JMeter的bin目录中的`jmeter.bat`(Windows)或`jmeter`(Unix/Linux)。

 

2. **创建测试计划**:

   - 在JMeter中创建一个新的测试计划。

   - 添加线程组(Thread Group)来模拟用户并发请求。

 

3. **配置HTTP请求**:

   - 在线程组中添加HTTP请求。

   - 设置API的URL、请求方法、请求头等。

 

4. **添加监听器**:

   - 添加图形结果(Graph Results)、聚合报告(Aggregate Report)等监听器来查看测试结果。

 

5. **运行测试**:

   - 点击运行按钮开始性能测试。

   - 观察监听器中的结果,分析API的性能表现。

 

6. **分析并优化**:

   - 根据测试结果调整线程组设置、优化API代码等,以提高性能。

 

### 使用漏洞扫描工具进行安全测试

 

1. **选择并安装漏洞扫描工具**:

   - 选择一个适合你的需求和环境的漏洞扫描工具,如OWASP Zap、Nessus等。

   - 下载并安装该工具。

 

2. **配置扫描目标**:

   - 在扫描工具中设置要扫描的目标,可以是IP地址、域名或URL等。

   - 配置扫描范围、扫描深度等参数。

 

3. **启动扫描**:

   - 点击开始扫描按钮,等待扫描完成。

 

4. **分析扫描结果**:

   - 扫描完成后,查看扫描报告,分析存在的漏洞和潜在的安全风险。

   - 根据扫描结果采取相应的安全措施,如修复漏洞、加强访问控制等。

 

5. **持续监控和测试**:

   - 定期运行漏洞扫描工具,确保系统的安全性。

   - 在开发过程中进行安全测试,确保新功能和修改不会导致新的安全漏洞。

 

 

 

 

 

 

 

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
C# + SQL Server 本系统包括两类用户:学生、管理员。管理员可以通过系统来添加管理员信息、修改管理员信息、添加学生信息、修改学生信息;开设课程、查询课程、录入成绩、统计成绩 管理系统是一种通过计算机技术实现的用于组织、监控和控制各种活动的软件系统。这些系统通常被设计用来提高效率、减少错误、加强安全性,同时提供数据和信息支持。以下是一些常见类型的管理系统: 学校管理系统: 用于学校或教育机构的学生信息、教职员工信息、课程管理、成绩记录、考勤管理等。学校管理系统帮助提高学校的组织效率和信息管理水平。 人力资源管理系统(HRM): 用于处理组织内的人事信息,包括员工招聘、培训记录、薪资管理、绩效评估等。HRM系统有助于企业更有效地管理人力资源,提高员工的工作效率和满意度。 库存管理系统: 用于追踪和管理商品或原材料的库存。这种系统可以帮助企业避免库存过剩或不足的问题,提高供应链的效率。 客户关系管理系统(CRM): 用于管理与客户之间的关系,包括客户信息、沟通记录、销售机会跟踪等。CRM系统有助于企业更好地理解客户需求,提高客户满意度和保留率。 医院管理系统: 用于管理医院或医疗机构的患者信息、医生排班、药品库存等。这种系统可以提高医疗服务的质量和效率。 财务管理系统: 用于记录和管理组织的财务信息,包括会计凭证、财务报表、预算管理等。财务管理系统
酒店管理系统(软件工程课程设计 一、摘要: 酒店,是为客人提供住宿、餐饮、娱乐和其它服务的综合性服务企业,它所接待的客 来自世界各地,而且这些客人的生活习惯、消费水平、信仰等各不相同。随着我国旅游 业的飞速发展,以及社会生活水平的普遍提高,人们对于酒店消费不断地提出更高、更 多样性的要求。如何以酒店企业所拥有的有限的人力、物力、财力和信息资源服务于住 店客人,满足客人的各种消费需求,在当今竞争日趋激烈的酒店行业中,是经营好酒店 企业的重要问题。 酒店经营管理人员不但要掌握科学的管理思想和管理方法来综合的运用酒店资源,还 应该采用先进的计算机管理手段处理日益复杂的信息资源,正确、及时地对客源市场信 息作出反应和正确的指定经营决策,这样才有可能保证酒店企业在如今激烈的竞争中求 得生存和发展。成功的应用先进的计算机管理手段辅助酒店企业的经营管理,不但要求 酒店的日常操作模式要符合计算机信息处理的要求,而且需要有相应的管理体系和人员 配合。作为酒店的经营管理人员只有充分的掌握酒店的各职能岗位的信息流程和计算机 处理的要求,并善于结合两者的要求和长处,才能使想进的计算信息处理技术有效的服 务与酒店的经营管理。 本课程设计主要解决的是在一个酒店的客房管理中,实现计算机对来客的订房情况, 消费情况的统计与登记,实现对酒店住房费用的一次性结算服务,为酒店管理人员关于 一定时间段里酒店的住房管理情况与酒店的经营情况提供快捷方便高效的管理手段。 在本课程设计中,系统开发平台为Windows XP,程序设计设计语言采用Vc++,数据库采用SQL Server 2005,程序运行平台为Windows 2000/XP。在Vc++中可以实现的功能有预定客户管理,客户日常事务登记,住房管理等。 Access作为各种信息资料的后台数据库包括客人信息、房间信息、客史记录等等。 通过本课程设计,主要实现对的是对酒店的客房进行管理,使用户能轻松地找到所需 要的客房信息,提供订房和退房服务,并对酒店客房的业绩进行统计,以实现服务管理 的电子化,自动化,提高酒店客房管理的办公效率,为提高和改善酒店的服务质量提供 保证。 二、可行性分析 1. 编写目的: 随着我国旅游业的飞速发展,以及社会生活水平的普遍提高,人们对于酒店消费不断 地提出更高、更多样性的要求。根据…酒店的要求,为…酒店开发一款可以方便快捷管理 与酒店客房相关的软件管理系统,经过详细分析与讨论,编写了本文档,其目的在于: 准确无误的理解与表达用户对本软件系统的要求 分析确认用户的所有要否合理以及有无实现的可能性以及必要性 便于系统设计人员完成对系统的需求分析 预期的读者为:酒店的相关工作人员,本系统的开发设计人员 2. 项目背景: 2.1项目总述: "酒店客房管理系统"应客户要求,利用计算机技术对酒店的客房订房退房等日常操作进 行管理,不仅节省人力,物力,而且提高了管理效率,方便了业务的管理。 2. 项目背景: 项目名称:"酒店客房管理"系统 任务提出者: …… 项目开发者: …… 系统用户: …酒店总台服务人员 3. 相关定义: 用户:系统使用人员 客户:酒店住户 2. 可行性研究的前提 3.1 欲开发软件的基本要求: A 功能: 客房信息管理; 用户可对酒店客房的相关信息进行管理,包括对客房的基本信息(如客房号,客 房价格等)进行检索,录入和修改 客房预订管理; 实现客户对酒店客房的预定要求 客房订房及入住管理; 实现客户对酒店客房的订房以及预订转入住要求 客房退房管理; 实现客户的退房要求,并进行费用结算 客户信息管理; 用户可对入住过酒店的客户信息进行查询,包括对客户的基本信息(如号、客户、 联系)进行检索。 系统设置管理; 用户根据需要修改系统相关设置 B 性能限制: 本系统是在微型机上开发的信息处理系统,在响应时间上午特殊要求。 C 输入输出: 系统的主要输入为酒店客户的相关信息,包括个人信息以及住宿信息等; 系统的主要输出为酒点客户的主要账单,以及相关报告等。 D 酒店客房管理的主要流程: E 同本系统连接的其它系统:客房门禁系统, 票据打印系统 H 完成期限: 预期6个月 2. 目标: 本项目旨在利用计算机进行酒店的客房管理,提高客房管理人员的工作效率;提高管 理人员的工作质量;改善对客户接待工作;实现管理计算机化,效率化;继承旧的管 理系统的优良性能基础上进一步提升软件的管理性能;实现人力资源的高效利用。 3. 条件、假定和限制: (1)针对用户要求,结合实际情况,所设计管理软件初步估计具有10到15年的应用寿 命。 (2)在具体的调研之后定下较为适合的系统设计方案,并进一步比较各方案的优劣, 从中提炼出最优方案。 (3)经费与投资重要来自用户,用户提供一部分的设备支持,其中保证日常的一部
"软件工程课程设计"报告 题目:酒店管理系统 指导教师: 成员: 完成日期: 目 录 一.概述 1.1工程背景 随着国家经济的开展人们的生活水平有了很大的提高。旅游度假和商务旅行已经成为 人们的一种生活需求。国家也把旅游业作为一个**支柱产业来扶持。各地的宾馆酒店越 来越多,行业间竞争越来越剧烈。传统的酒店管理模式已经不能适应现代酒店开展。利 用高科技的电脑网络技术来处理宾馆酒店经营数据,已经成为提高企业管理效率,改善 效劳质量的关键。 1.2编写目的 现代化的酒店组织庞大、效劳工程多、信息量大,要想提高劳动生产、降低本钱、提 高效劳质量和管理水平,促进经济效益,但凭原始的手工记录管理,不仅效率低,还很 容易出错,因此必须借助计算机来进展现代化的信息管理。所以酒店管理系统正是为此 而设计的,优秀的酒店客房管理系统操作方便,灵活性好,系统平安性高,运行稳定, 效劳快捷方便,让宾客感受到一种顾客至上的享受。 1.3工程名称 酒店管理系统。 1.4 开发环境 开发软件:Microsoft Visual Studio 2010 高级语言:C# 使用技术:.Net/JS/JQuery 数据库:Microsoft SQL Server 2008 二.需求分析 2.1 问题的提出 该系统的具体任务就是设计一个酒店客房管理系统,由计算机来代替人工执行一系列 诸如增加新客房、删除客房、客房修改、查询、客户管理等操作,这样就使办公人员可 以轻松快捷地完成酒店客房管理任务,了解整个酒店客房信息。 2.2需完成的功能 数据流图如下列图1和2所示: 图1 顶层数据流图 图2 0层数据流图 酒店管理系统 .1宾客登记 登记酒店宾客入住情况,包括宾客的**及**号的登记,以及入住房间信息。 2.2.1.2退房登记 当宾客离开时,需要办理退房结账手续。 2.2.1.3入住情况查询 对于一定时间段内,每个宾客入住情况可以实现根本查询。 .4客房类型管理 管理员可以在管理平台上增添、修改、删除客房类型〔豪华双人房、VIP房、普通单人 房等〕。 .5 客房管理 管理员可以在管理平台上增添、修改、删除各种客房类型的客房。 .6 客房信息查询 管理员可以通过各个客房的房间来查询该客房的详细情况〔是否已有宾客入住、客房 的设备是否完好等〕。 .7 经营情况管理 管理员可以通过宾客的入住情况得知目前哪种客房类型更受欢送,哪个时间段宾客入 住数量更多,入住宾客的年龄段、目前收入的金额来调整经营状况。 三.数据库设计 3.1概念模型设计 图3 概念模型设计 3.2逻辑模型设计 数据构造名称:管理员 含义说明:主要用于记录管理员的相关信息 数据项: "属性名 "数据类型 "数据描述 " "管理员标识 "int "主键,自增,唯一标识该管理 " " " "员 " "管理员** "varchar(50) " " "管理员密码 "varchar(50) " " "管理员 "varchar(50) " " "管理员地址 "varchar(50) " " "管理员 "varchar(50) " " 数据构造名称:顾客信息 含义说明:主要用于记录客户的相关信息 数据项: "属性名 "数据类型 "数据描述 " "客户标识 "varchar(50) "主键,自增,唯一标识该客户 " "客户** "varchar(50) " " "客户 "varchar(50) " " "顾客地址 "varchar(50) " " 数据构造名称:房间入住历史记录 含义说明:主要用于记录房间的使用历史信息 数据项: "属性名 "数据类型 "数据描述 " "订房时间 "datetime "主键,自增 " "退房时间 "varchar(50) " " "房间标识 "varchar(50) "主键,指明所属房间 " "总计价格 "money " " "顾客标识 "varchar(50) "外键,指明所属客户 " "顾客** "varchar(50) "外键,指明客户** " 顾客 varchar(50) 外键,指明客户 数据构造名称:房间类型 含义说明:主要用于记录房间的名称、面积等相关信息。 数据项: "属性名 "数据类型 "数据描述 " "房间类型标识"int "主键,自增,唯一标识该类型 " "房间类型名称"varchar(50) " " "房间面积 "float " " "床位 "int " " "价格 "money " " "空调 "int " " "电视 "int " " 数据构造名称:房间入住信息 含义说明:主要用于记录订房时间、消费者标识等信息 数据项: "属性名 "数据类型 "数据描述 " "房间标识 "int "主键,自增,唯一标识该房间 " "订房时间 "datatime " " 消费者标识 va

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YCY^v^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值