用Mysql写一个酒店管理系统的数据库
时间: 2024-05-01 22:23:36 浏览: 10
好的,我可以给您提供一个简单的酒店管理系统的数据库设计,包含以下几个表:
1. 酒店信息表:记录酒店的基本信息,如酒店名称、地址、电话等。
```
CREATE TABLE hotel (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
address VARCHAR(100) NOT NULL,
phone VARCHAR(20) NOT NULL
);
```
2. 房型信息表:记录酒店所提供的房型信息,如房型名称、房间价格等。
```
CREATE TABLE room_type (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
price DECIMAL(10, 2) NOT NULL
);
```
3. 房间信息表:记录酒店的房间信息,如房间号、房间类型等。
```
CREATE TABLE room (
id INT PRIMARY KEY AUTO_INCREMENT,
room_no VARCHAR(20) NOT NULL,
room_type_id INT NOT NULL,
status VARCHAR(20) DEFAULT 'available',
FOREIGN KEY (room_type_id) REFERENCES room_type(id)
);
```
4. 客房服务记录表:记录客房服务信息,如服务类型、服务时间等。
```
CREATE TABLE service_record (
id INT PRIMARY KEY AUTO_INCREMENT,
room_id INT NOT NULL,
service_type VARCHAR(50) NOT NULL,
service_time DATETIME NOT NULL,
FOREIGN KEY (room_id) REFERENCES room(id)
);
```
5. 客户信息表:记录客户的基本信息,如姓名、电话等。
```
CREATE TABLE customer (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
phone VARCHAR(20) NOT NULL
);
```
6. 订单信息表:记录客户预订或入住的订单信息,如客户id、房间id、入住时间、离店时间、订单状态等。
```
CREATE TABLE order (
id INT PRIMARY KEY AUTO_INCREMENT,
customer_id INT NOT NULL,
room_id INT NOT NULL,
checkin_time DATETIME NOT NULL,
checkout_time DATETIME NOT NULL,
status VARCHAR(20) DEFAULT 'booked',
FOREIGN KEY (customer_id) REFERENCES customer(id),
FOREIGN KEY (room_id) REFERENCES room(id)
);
```
以上是一个简单的酒店管理系统的数据库设计,具体实现可能因应用场景和需求的不同而有所差异。