3

我在 MySQL 中有一个表,其中包含有关用户许可证的信息,该用户许可证具有他们可能在其许可证上拥有的 15 个可选资格。这些在 Web 表单上表示为 15 个复选框。

除了表中只有 15 个 BOOL 并相应地设置为 True 或 False 之外,是否有一种存储此信息的好方法?

谢谢

4

4 回答 4

3

解决此问题的一个好方法是拥有三个表:

  1. 您的表格包含用户许可证的详细信息,例如 userLicence
  2. 包含所有复选框选项列表的表格,例如 licenceOption
  3. 一个映射表,详细说明哪些选项适用于哪个 userLicence,例如 userLicenceOptionMapping
于 2013-10-28T22:21:20.577 回答
0

另一个好方法是,如果您可以在表单上创建一个Drop Down List(在下拉列表中包含所有 15 个选项),客户端可以从下拉列表中选择值,然后单击Add button将值添加到带有 ClientID 等的单独表中。它将保存您在表格中有 15 个是/否字段,在表格中也有 15 个列。

于 2013-10-28T22:28:43.763 回答
0

做一个字段,然后在上面使用json。所以选中了 3 个复选框,您会得到 {1,2,3} 复选框 1 2 和 4 选中 {1,2,4}

现在很多论坛都使用与上述类似的方法

所以你基本上是在文本中存储数组,这是理想的!

于 2013-10-28T23:19:12.263 回答
0

这将是理想的方式,无需加密。但是,我会在s 上使用AES_ENCRYPT()和。AES_DECRYPT()TINYBLOB

于 2013-10-28T22:17:36.467 回答