1. 项目背景与核心需求
最近在整理学校管理系统的数据库设计时,经常需要快速创建基础表结构。SchoolDB作为典型的教务管理系统数据库,其核心表结构设计直接影响着后续开发效率和数据规范性。这里分享我经过多个项目验证的4个关键表DDL语句,包含学生表、教师表、课程表和成绩表的标准结构定义。
这些DDL语句去除了所有业务数据和约束条件,仅保留最精简的表结构定义。特别适合以下场景:
- 新项目快速搭建数据库原型
- 教学演示中的基础表创建
- 数据库设计评审时的结构参考
- 临时测试环境的快速部署
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 数据库设计思路解析
2.1 表关系设计原则
学校管理系统的核心是"谁(Who)在什么时间(When)学习了什么(What)以及效果如何(How)"。基于这个逻辑,设计了四个基础实体:
- 学生(Student):学习主体
- 教师(Teacher):教学主体
- 课程(Course):教学载体
- 成绩(Score):学习成果
2.2 字段设计规范
所有表都遵循以下设计原则:
- 自增主键统一使用id命名
- 字符类型根据实际需求选择VARCHAR长度
- 时间类型统一使用DATETIME
- 数字类型根据精度需求选择INT或DECIMAL
- 所有字段设置NOT NULL约束(允许NULL的需特别说明)
3. 核心表结构DDL详解
3.1 学生表(student)
sql复制CREATE TABLE student (
id INT AUTO_INCREMENT PRIMARY KEY,
student_no VARCHAR(20) NOT NULL COMMENT '学号',
name VARCHAR(50) NOT NULL COMMENT '姓名',
gender CHAR(1) NOT NULL COMMENT '性别(M/F)',
birth_date DATE NOT NULL COMMENT '出生日期',
class_id INT NOT NULL COMMENT '班级ID',
enrollment_date DATETIME NOT NULL COMMENT '入学时间',
contact_phone VA
