springboot项目设计一个用户信息表和用户账号密码表,并将创建语句和两表关联展示出来
时间: 2024-03-27 08:40:19 浏览: 56
springboot 两表增删改查 用户表和角色表
好的,根据您的要求,我可以为您提供一个简单的 Spring Boot 项目中用户信息表和用户账号密码表的设计,并展示创建语句和两表关联的语句。
用户信息表设计:
```sql
CREATE TABLE `user_info` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`phone` varchar(20) DEFAULT NULL,
`age` int(3) DEFAULT NULL,
`gender` varchar(10) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
`created_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `username_UNIQUE` (`username`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
```
用户账号密码表设计:
```sql
CREATE TABLE `user_login` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) NOT NULL,
`username` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`created_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `username_UNIQUE` (`username`),
KEY `user_id_idx` (`user_id`),
CONSTRAINT `user_id` FOREIGN KEY (`user_id`) REFERENCES `user_info` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
```
以上是基本的用户信息表和用户账号密码表的设计和创建语句,其中用户账号密码表中的 `user_id` 为外键,关联到用户信息表的 `id` 字段上。在用户信息表中,我们使用了 `id` 字段作为主键,在用户账号密码表中,我们使用了 `user_id` 字段作为外键,并设置了级联删除和更新。
希望对您有所帮助。
阅读全文