设计一个数据库结构完成用户注册或登录
时间: 2023-06-27 18:06:17 浏览: 137
可以考虑以下数据库表结构:
1. user_info:用于存储用户的基本信息,如用户名、密码、邮箱等。
| Column | Type | Description |
|------------|--------------|---------------------|
| id | int | 用户ID |
| username | varchar(50) | 用户名 |
| password | varchar(50) | 密码 |
| email | varchar(100) | 邮箱 |
| phone | varchar(20) | 手机号码 |
| created_at | timestamp | 创建时间 |
| updated_at | timestamp | 最后修改时间 |
2. user_profile:存储用户的个人资料,如头像、昵称、性别等。
| Column | Type | Description |
|------------|--------------|----------------------|
| id | int | 用户ID |
| nickname | varchar(50) | 昵称 |
| avatar | varchar(200) | 头像图片链接 |
| gender | tinyint | 性别(0:未知,1:男,2:女) |
| birthday | date | 出生日期 |
| location | varchar(100) | 地址 |
| created_at | timestamp | 创建时间 |
| updated_at | timestamp | 最后修改时间 |
3. user_login_history:存储用户的登录历史记录,包括登录时间、IP地址等。
| Column | Type | Description |
|------------|--------------|---------------------|
| id | int | 记录ID |
| user_id | int | 用户ID |
| login_time | timestamp | 登录时间 |
| ip_address | varchar(50) | 登录IP地址 |
| created_at | timestamp | 创建时间 |
| updated_at | timestamp | 最后修改时间 |
4. user_login_token:用于存储用户登录时生成的token信息,包括token字符串、过期时间等。
| Column | Type | Description |
|------------|--------------|---------------------|
| id | int | 记录ID |
| user_id | int | 用户ID |
| token | varchar(100) | token字符串 |
| expire_at | timestamp | 过期时间 |
| created_at | timestamp | 创建时间 |
| updated_at | timestamp | 最后修改时间 |
以上是一个建议的数据库结构,可以根据实际需求进行调整和优化。