Files
schoolNews/schoolNewsServ/.bin/mysql/sql/createTableUser.sql

67 lines
3.3 KiB
MySQL
Raw Normal View History

2025-10-05 18:00:29 +08:00
use school_news;
2025-09-28 14:20:09 +08:00
-- MySQL Script to create the user table
DROP TABLE IF EXISTS `tb_sys_user`;
CREATE TABLE `tb_sys_user` (
`id` VARCHAR(50) NOT NULL COMMENT '用户ID',
`username` VARCHAR(50) NOT NULL COMMENT '用户名',
`password` VARCHAR(128) NOT NULL COMMENT '密码(建议存储 bcrypt/argon2 哈希)',
`email` VARCHAR(100) DEFAULT NULL COMMENT '电子邮件',
`phone` VARCHAR(20) DEFAULT NULL COMMENT '电话号码',
`wechat_id` VARCHAR(50) DEFAULT NULL COMMENT '微信ID',
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
`status` INT(4) NOT NULL DEFAULT 1 COMMENT '状态',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_user_username` (`username`),
UNIQUE KEY `uk_user_email` (`email`),
KEY `idx_user_phone` (`phone`)
2025-10-29 19:08:22 +08:00
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
2025-09-28 14:20:09 +08:00
-- 推荐:把默认 admin 密码替换为已哈希的值
-- 用户信息表
DROP TABLE IF EXISTS `tb_sys_user_info`;
CREATE TABLE `tb_sys_user_info` (
`id` VARCHAR(50) NOT NULL COMMENT '用户信息ID',
`user_id` VARCHAR(50) NOT NULL COMMENT '用户ID',
`avatar` VARCHAR(255) DEFAULT NULL COMMENT '头像',
`gender` INT(4) DEFAULT 0 COMMENT '性别',
`family_name` VARCHAR(50) DEFAULT NULL COMMENT '',
`given_name` VARCHAR(50) DEFAULT NULL COMMENT '',
`full_name` VARCHAR(100) DEFAULT NULL COMMENT '全名',
2025-10-18 17:57:14 +08:00
`level` INT(4) DEFAULT 1 COMMENT '等级',
2025-11-26 12:03:34 +08:00
`student_id` VARCHAR(50) DEFAULT NULL COMMENT '学号',
2025-09-28 14:20:09 +08:00
`id_card` VARCHAR(50) DEFAULT NULL COMMENT '身份证号',
`address` VARCHAR(255) DEFAULT NULL COMMENT '地址',
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_user_info_user_id` (`user_id`)
2025-10-29 19:08:22 +08:00
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
2025-09-28 14:20:09 +08:00
DROP TABLE IF EXISTS `tb_sys_login_log`;
CREATE TABLE `tb_sys_login_log` (
`id` VARCHAR(50) NOT NULL COMMENT '登录日志ID',
`user_id` VARCHAR(50) NULL COMMENT '用户ID',
2025-09-28 14:20:09 +08:00
`username` VARCHAR(50) NOT NULL COMMENT '用户名',
`ip_address` VARCHAR(45) DEFAULT NULL COMMENT 'IP地址',
`ip_source` VARCHAR(100) DEFAULT NULL COMMENT 'IP来源',
`browser` VARCHAR(100) DEFAULT NULL COMMENT '浏览器',
`os` VARCHAR(100) DEFAULT NULL COMMENT '操作系统',
`password` VARCHAR(100) DEFAULT NULL COMMENT '密码',
`login_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '登录时间',
`status` INT(4) DEFAULT 1 COMMENT '登录状态0失败 1成功',
`error_count` INT(4) DEFAULT 0 COMMENT '错误次数',
`message` VARCHAR(255) DEFAULT NULL COMMENT '登录消息',
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
index `idx_user_id` (`user_id`) USING BTREE,
index `idx_login_time` (`login_time`) USING BTREE
2025-10-29 19:08:22 +08:00
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
2025-09-28 14:20:09 +08:00