体育馆场地管理系统的数据库设计
时间: 2023-12-14 07:04:29 浏览: 59
以下是一个体育馆场地管理系统的数据库设计的示例:
该系统包含以下表格:
1. 场馆表格(venues):包含场馆的ID、名称、地址、联系电话等信息。
2. 场地表格(fields):包含场地的ID、所属场馆ID、名称、类型、价格等信息。
3. 用户表格(users):包含用户的ID、姓名、性别、联系电话、邮箱等信息。
4. 预约表格(bookings):包含预约的ID、所属场地ID、预约用户ID、预约开始时间、预约结束时间等信息。
表格之间的关系如下:
1. 场馆表格与场地表格之间是一对多的关系,即一个场馆可以有多个场地,但一个场地只能属于一个场馆。
2. 预约表格与场地表格和用户表格之间是多对一的关系,即一个场地可以有多个预约,一个用户也可以有多个预约,但一个预约只能属于一个场地和一个用户。
以下是该系统的数据库设计示例代码:
```sql
-- 场馆表格
CREATE TABLE venues (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
address VARCHAR(100) NOT NULL,
phone VARCHAR(20) NOT NULL
);
-- 场地表格
CREATE TABLE fields (
id INT PRIMARY KEY AUTO_INCREMENT,
venue_id INT NOT NULL,
name VARCHAR(50) NOT NULL,
type VARCHAR(20) NOT NULL,
price DECIMAL(8,2) NOT NULL,
FOREIGN KEY (venue_id) REFERENCES venues(id)
);
-- 用户表格
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
gender VARCHAR(10) NOT NULL,
phone VARCHAR(20) NOT NULL,
email VARCHAR(50) NOT NULL
);
-- 预约表格
CREATE TABLE bookings (
id INT PRIMARY KEY AUTO_INCREMENT,
field_id INT NOT NULL,
user_id INT NOT NULL,
start_time DATETIME NOT NULL,
end_time DATETIME NOT NULL,
FOREIGN KEY (field_id) REFERENCES fields(id),
FOREIGN KEY (user_id) REFERENCES users(id)
);
```