详细的编写学生宿舍管理系统的数据库代码
时间: 2023-06-15 14:05:35 浏览: 98
学生宿舍管理系统的数据库设计与实现需要考虑到以下几个方面:
1. 学生信息管理:包括学号、姓名、性别、年龄、联系电话等信息。
2. 宿舍信息管理:包括宿舍楼号、宿舍号、床位数、设施等信息。
3. 入住管理:包括入住时间、退宿时间、缴费情况等信息。
4. 维修管理:包括维修日期、维修内容、维修人员等信息。
5. 报修管理:包括报修日期、报修内容、处理状态等信息。
基于以上需求,我们可以设计出如下的数据库表结构:
1. 学生信息表(student_info)
| 字段名 | 类型 | 说明 |
| ----------- | ---- | ------ |
| student_id | int | 学号 |
| name | char | 姓名 |
| gender | char | 性别 |
| age | int | 年龄 |
| phone | char | 联系电话 |
2. 宿舍信息表(dorm_info)
| 字段名 | 类型 | 说明 |
| ---------- | ---- | ----- |
| dorm_id | int | 宿舍号 |
| building | char | 宿舍楼号 |
| bed_number | int | 床位数 |
| facilities | char | 设施 |
3. 入住管理表(check_in)
| 字段名 | 类型 | 说明 |
| ------------ | -------- | ------ |
| check_in_id | int | 入住编号 |
| student_id | int | 学生学号 |
| dorm_id | int | 宿舍编号 |
| check_in_date | datetime | 入住日期 |
| check_out_date | datetime | 退宿日期 |
| payment_status | char | 缴费情况 |
4. 维修管理表(repair)
| 字段名 | 类型 | 说明 |
| ----------- | -------- | ------ |
| repair_id | int | 维修编号 |
| dorm_id | int | 宿舍编号 |
| repair_date | datetime | 维修日期 |
| repair_content | char | 维修内容 |
| repair_person | char | 维修人员 |
5. 报修管理表(report)
| 字段名 | 类型 | 说明 |
| ----------- | -------- | ------ |
| report_id | int | 报修编号 |
| dorm_id | int | 宿舍编号 |
| report_date | datetime | 报修日期 |
| report_content | char | 报修内容 |
| status | char | 处理状态 |
以上是一个比较基本的数据库表结构,当然,在实际的开发中,还需要考虑到数据的完整性、安全性、性能等因素。最终的数据库代码如下:
```
-- 创建学生信息表
CREATE TABLE student_info (
student_id INT PRIMARY KEY,
name VARCHAR(20) NOT NULL,
gender CHAR(1) NOT NULL,
age INT NOT NULL,
phone VARCHAR(20) NOT NULL
);
-- 创建宿舍信息表
CREATE TABLE dorm_info (
dorm_id INT PRIMARY KEY,
building VARCHAR(20) NOT NULL,
bed_number INT NOT NULL,
facilities VARCHAR(50) NOT NULL
);
-- 创建入住管理表
CREATE TABLE check_in (
check_in_id INT PRIMARY KEY,
student_id INT NOT NULL,
dorm_id INT NOT NULL,
check_in_date DATETIME NOT NULL,
check_out_date DATETIME NOT NULL,
payment_status CHAR(1) NOT NULL,
FOREIGN KEY (student_id) REFERENCES student_info(student_id),
FOREIGN KEY (dorm_id) REFERENCES dorm_info(dorm_id)
);
-- 创建维修管理表
CREATE TABLE repair (
repair_id INT PRIMARY KEY,
dorm_id INT NOT NULL,
repair_date DATETIME NOT NULL,
repair_content VARCHAR(100) NOT NULL,
repair_person VARCHAR(20) NOT NULL,
FOREIGN KEY (dorm_id) REFERENCES dorm_info(dorm_id)
);
-- 创建报修管理表
CREATE TABLE report (
report_id INT PRIMARY KEY,
dorm_id INT NOT NULL,
report_date DATETIME NOT NULL,
report_content VARCHAR(100) NOT NULL,
status CHAR(1) NOT NULL,
FOREIGN KEY (dorm_id) REFERENCES dorm_info(dorm_id)
);
```
阅读全文