许可表

时间:2013-11-29 03:38:16

标签: c# mysql

我需要一些帮助来解决疑问 我有27个州和5700个城市,我想允许我的用户访问或不访问每个州或城市。
每次用户尝试访问系统时,阅读5700个城市不是一个好主意,因为他们必须“下载”该表的所有信息,以了解谁可以访问每个城市。
我正在考虑给予“二进制许可”,将5700位置为2种可能性,0位(不可访问)或1位(可访问),然后系统可以读取每个位并与城市列表进行比较并给予或不允许。登记/> 什么是这个问题的最佳解决方案?是否有其他数学可能来优化此权限检查?

1 个答案:

答案 0 :(得分:0)

我认为你可以创建一个包含2列的多对多表:

  • 用户ID
  • cityid

并且只有在用户有权访问该城市时才会在那里记录。

这将更容易管理,为用户选择合适的城市也很容易。