在现代高校管理中,宿管系统的引入极大地提高了宿舍管理的效率。宿管系统中的资料管理模块作为核心功能之一,负责学生信息、宿舍分配等关键数据的存储与处理。本文将详细介绍该模块的具体实现,包括数据库设计和后端代码编写。
一、数据库设计
数据库是宿管系统的核心组成部分。我们使用MySQL作为数据库管理系统,设计了如下表结构:

CREATE TABLE students (
student_id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
gender ENUM('Male', 'Female') NOT NULL,
dob DATE NOT NULL,
phone_number VARCHAR(15)
);
CREATE TABLE dorms (
dorm_id INT AUTO_INCREMENT PRIMARY KEY,
capacity INT NOT NULL,
floor INT NOT NULL
);
CREATE TABLE assignments (
assignment_id INT AUTO_INCREMENT PRIMARY KEY,
student_id INT,
dorm_id INT,
FOREIGN KEY (student_id) REFERENCES students(student_id),
FOREIGN KEY (dorm_id) REFERENCES dorms(dorm_id)
);
二、后端代码实现
后端服务采用Node.js框架Express进行搭建。以下是一个简单的API示例,用于添加新的学生信息:
const express = require('express');
const mysql = require('mysql');
const app = express();
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'dormitory'
});
app.use(express.json());
app.post('/students', (req, res) => {
const { name, gender, dob, phone_number } = req.body;
const query = `INSERT INTO students (name, gender, dob, phone_number) VALUES (?, ?, ?, ?)`;
connection.query(query, [name, gender, dob, phone_number], (err, results) => {
if (err) throw err;
res.status(201).send({ message: 'Student added successfully' });
});
});
app.listen(3000, () => console.log('Server running on port 3000'));
