Mysql

Navicat

官网文档教程:https://www.navicat.com.cn/manual/online_manual/cn/navicat_16/win_manual/#/model_window

Navicat mysql 建表字段 默认值、empty string、空白、NULL 的区别

navicat 设计表字段默认值转换为建表sql

Navicat设计表字段时,设置想要的 默认值、时间字段自动获取当前时间

image-20231010103008886

image-20231010103352747

设置时间字段的精度image-20231010104118599

mysql中给字段创建自定义check约束

因为navicat不提供图形化创建check约束,需要手动“新建查询”来创建check约束。

--在【现有列】中添加check约束,限制只能输入 alert/browser
alter table xue_feng_use_record add constraint client_type check (client_type in ('alert','browser'));

加入约束后,看看效果image-20231011161108540

常见用法:

mysql日期范围查找(两个日期之间的记录)

先有码 ,再授权,再注册使用

具体实现:

页面点按钮 生成码

拿 码+时长 授权

用户注册

授权这块 :主要信息是 授权人、授权码 、授权时间, 注册码这块: 主要信息是 注册码、 注册码状态 使用记录这块: 店铺、注册码、使用时间 如果要拆的话 客户端也可以 单独拆个表 Window和移动端

外键约束

要求 主要授权表里 授权过的 注册码 才能用。

主表、主键

子表(外键)

外键约束后,删除数据 只能先删子表,再删主表


需求

注册码:

可使用时长(开始和结束)、有正常和冻结两个状态、使用者(店铺账号)、代理人、代理人联系方式(微信和电话)、付费金额

冻结状态下 不可使用,可以像试用会员一样 体验 试用功能;

正式会员:

我给用户一个注册码(数据库存), 注册码有使用时长(我有空做个页面授权)

注册码,可以被多个用户使用,但是同时只能被一个用户使用:如果被同时使用了,后者会将前置踢下线 并给出提示:前则的用户名

注册码A + 用户1 ; 注册码A + 用户2

用户1和用户2 不能同时在线

试用会员:

非注册用户可以试用

试用功能:

按天试用,每天的 试用次数、试用时长可控、试用结束可提示充值提示语,提示语中有客服微信联系方式

统计功能:

针对试用用户维度: 可以按天或月统计出 试用时间(开始和结束时间) 、试用的次数、客户端类型

针对付费用户维度: 可以按天或月统计出 使用时间(开始和结束时间) 、使用的次数,其中可给会员展示出剩余和截止时间、客户端类型

注册码维度: 可查询到注册码下所有用户,可以按天或月统计出 使用时间(开始和结束时间)、使用的次数、客户端类型

负责人维度: 可以查看负责人下所有注册码、使用者、付费金额、总金额、客户端类型

到期时间维度:查询7天内到期的注册码,同时包含 使用者、代理人、代理人联系方式、客户端类型

  1. 查询注册码状态

  2. 按时间(天):查询注册码A下所有使用的店铺、使用次数、使用时间、使用时长

  3. 查询7天内即将到期注册码

    注册码A 到期时间 最常用店铺 店铺总数

  4. 代理人A授权的所有注册码

    xuefeng 注册码A

  5. 按时间(天)查询,授权金额 倒序

搜索条件:注册码,使用时间(统计今天内)、到期时间(默认7天),店铺,注册码状态(正常、冻结),用户状态(试用、过期、授权)、客户端类型、

| 注册码 | 有效期 | 金额 | 激活时间 | 到期时间 | 授权人 | 授权时间 | 联系方式 | 店铺名 | 客户端 | 使用日期 | 使用时长 | 次数 | | —— | —— | —- | ——– | ——– | —— | ——– | ——– | —— | —— | ——– | ——– | —- | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

统计三天内的用户(试用 正式 过期)