任务描述
本关任务:创建博客系统数据库的用户信息表。
相关知识
数据库整体设计
一个博客系统会有哪些功能呢,肯定会有的是博客列表,博客详情,评论,登陆注册等等这些功能,那应该建多少张表呢?应该给这些表添加哪些字段呢?字段的约束怎么设计呢?表与表之间的关联关系应该怎样设计呢?
这是你在开始本实训之前要思考的问题。
博客系统数据库的整体设计如下图所示:总共涉及到五张表:
-
用户信息表;
-
博客信息表;
-
博客类型表;
-
博客评论表;
-
博客标签表。
用户信息表(t_user)
设计用户信息表是设计数据库的第一步,和一般的网站类似,博客系统的用户信息有如下内容:
字段名称 | 类型 | 备注 | 约束 |
---|---|---|---|
userId | bigint | 用户ID | 主键,自增长,增量为1 |
username | varchar(32) | 用户名 | 非空 |
password | varchar(32) | 密码 | 非空 |
user_sex | varchar(6) | 性别 0 代表男 1 代表女 | 默认值为 0 |
email | varchar(64) | 邮箱 | 无 |
phone | varchar(11) | 手机号码 | 非空 |
firstname | varchar(6) | 姓 | 无 |
lastname | varchar(12) | 名 | 无 |
avatar | varchar(255) | 头像地址 | 无 |
is_superuser | int | 是否是管理员 0 代表不是 1 代表是 | 默认值为0 |
last_login | datetime | 上一次登陆时间 | 无 |
user_register_time | datetime | 用户注册时间 | 无 |
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End
区域内进行代码补充,具体任务如下:
- 创建用户信息表,使用
blog_db
数据库,创建的表命名为t_user
。
测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。 每次点击评测后台都会将数据库环境重置,数据库blog_db
会自动创建好。
预期输出:
实验代码
#请在此添加实现代码
########## Begin ##########
#在blog_db库中创建t_user表
USE blog_db;
CREATE TABLE t_user (
userId bigint NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '用户ID',
username varchar(32) NOT NULL COMMENT '用户名',
password varchar(32) NOT NULL COMMENT '用户密码',
user_sex varchar(6) NOT NULL DEFAULT '0' COMMENT '用户性别',
email varchar(64) DEFAULT NULL COMMENT '用户邮箱',
phone varchar(11) NOT NULL COMMENT '手机号码',
firstname varchar(6) DEFAULT NULL COMMENT '姓',
lastname varchar(12) DEFAULT NULL COMMENT '名',
avatar varchar(255) DEFAULT NULL COMMENT '头像地址',
is_superuser int NOT NULL DEFAULT '0' COMMENT '是否是管理员 1代表 是 0代表不是',
last_login datetime DEFAULT NULL COMMENT '上一次登录时间',
user_register_time datetime DEFAULT NULL COMMENT '用户注册时间'
);
########## End ##########
头歌答案
#请在此添加实现代码
########## Begin ##########
#在blog_db库中创建t_user表
use blog_db;
CREATE TABLE `t_user` (
`userId` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`username` varchar(32) NOT NULL COMMENT '用户名',
`password` varchar(32) NOT NULL COMMENT '用户密码',
`user_sex` varchar(6) NOT NULL DEFAULT '0' COMMENT '用户性别',
`email` varchar(64) DEFAULT NULL COMMENT '用户邮箱',
`phone` varchar(11) NOT NULL COMMENT '手机号码',
`firstname` varchar(6) DEFAULT NULL COMMENT '姓',
`lastname` varchar(12) DEFAULT NULL COMMENT '名',
`avatar` varchar(255) DEFAULT NULL COMMENT '头像地址',
`is_superuser` int NOT NULL DEFAULT '0' COMMENT '是否是管理员 1代表 是 0代表不是',
`last_login` datetime DEFAULT NULL COMMENT '上一次登录时间',
`user_register_time` datetime DEFAULT NULL COMMENT '用户注册时间',
PRIMARY KEY (`userId`)
);
########## End ##########