-- 创建数据库 CREATE DATABASE IF NOT EXISTS student_management DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE student_management; -- 创建学生表 CREATE TABLE IF NOT EXISTS students ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '学生ID', student_no VARCHAR(20) NOT NULL UNIQUE COMMENT '学号', name VARCHAR(50) NOT NULL COMMENT '姓名', gender VARCHAR(10) COMMENT '性别', age INT COMMENT '年龄', class_name VARCHAR(50) COMMENT '班级', major VARCHAR(50) COMMENT '专业', phone VARCHAR(20) COMMENT '联系电话', email VARCHAR(100) COMMENT '电子邮箱', address VARCHAR(200) COMMENT '家庭住址', birthday DATE COMMENT '出生日期', status VARCHAR(10) DEFAULT '在读' COMMENT '状态(在读/休学/毕业)', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生信息表'; -- 插入测试数据 INSERT INTO students (student_no, name, gender, age, class_name, major, phone, email, address, birthday, status) VALUES ('2024001', '张三', '男', 20, '计算机2024-1班', '计算机科学与技术', '13800138001', 'zhangsan@example.com', '北京市海淀区', '2004-03-15', '在读'), ('2024002', '李四', '女', 19, '计算机2024-1班', '计算机科学与技术', '13800138002', 'lisi@example.com', '上海市浦东新区', '2005-07-22', '在读'), ('2024003', '王五', '男', 21, '软件2024-1班', '软件工程', '13800138003', 'wangwu@example.com', '广州市天河区', '2003-11-08', '在读'), ('2024004', '赵六', '女', 20, '软件2024-1班', '软件工程', '13800138004', 'zhaoliu@example.com', '深圳市南山区', '2004-05-18', '在读'), ('2024005', '孙七', '男', 22, '大数据2024-1班', '数据科学与大数据技术', '13800138005', 'sunqi@example.com', '杭州市西湖区', '2002-09-25', '休学'); -- ============================================================ -- 用户表(支持登录认证和权限控制) -- ============================================================ CREATE TABLE IF NOT EXISTS users ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '用户ID', username VARCHAR(50) NOT NULL UNIQUE COMMENT '登录用户名', password VARCHAR(100) NOT NULL COMMENT '登录密码(MD5加密)', real_name VARCHAR(50) COMMENT '真实姓名', role VARCHAR(20) NOT NULL DEFAULT 'user' COMMENT '角色: admin=系统管理员, user=一般用户', email VARCHAR(100) COMMENT '电子邮箱', phone VARCHAR(20) COMMENT '联系电话', avatar VARCHAR(200) COMMENT '头像路径', status VARCHAR(10) DEFAULT '正常' COMMENT '状态: 正常/禁用', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表'; -- 插入内置管理员账户(密码: admin123) INSERT INTO users (username, password, real_name, role, email, phone) VALUES ('admin', '0192023a7bbd73250516f069df18b500', '系统管理员', 'admin', 'admin@student.com', '13800000000'); -- 插入一般用户测试账户(密码: 123456) INSERT INTO users (username, password, real_name, role, email, phone) VALUES ('zhangsan', 'e10adc3949ba59abbe56e057f20f883e', '张三', 'user', 'zhangsan@example.com', '13800138001'), ('lisi', 'e10adc3949ba59abbe56e057f20f883e', '李四', 'user', 'lisi@example.com', '13800138002'), ('wangwu', 'e10adc3949ba59abbe56e057f20f883e', '王五', 'user', 'wangwu@example.com', '13800138003');