文章背景:
公司新增需求:新增一个开放权限范围authRole,一开始得想法是直接使用string存储,后来前端说不可以使用明文,不可以传入"学生、老师"这样 传入得参数最勉强也是"1、4",这里继续使用string类型的话,在进行模糊查询的时候就会出现一个错误,例如在查询权限包含1的数据时,包含11的也会被查询出来 不符合需求,然后看着这些静态变量萌生了一个想法是否可以使用set类型,然后开始学习set,问为什么不多加一个管理表,首先我是在别人的代码基础上改的,新增 一个表我觉得很麻烦,而且只是新增一个字段就多加一个表我觉得不太好。所以我想着试试可不可以使用SET类型。
SET类型
SET是一个字符串对象,可以有零或多个值,其值来自表创建时规定的允许的一列值。指定包括多个SET成员的SET列值时各成员之间用逗号(‘,’)间隔开。所以SET成员值本身不能包含逗号。SET最多可以有64个不同的成员,当创建表时,SET成员值的尾部空格将自动被删除;当检索时,保存在SET列的值使用列定义中所使用的大小写来显示。请注意可以为SET列分配字符集和校对规则。对于二进制或大小写敏感的校对规则,当为列分配值时应考虑大小写。(官方解释,不懂没事直接看例子)
如何定义SET类型