我们正在使用几个大致如下的表:
| ID | DepartmentId | Data |
| 1 | 1 | ... |
| 2 | 1 | ... |
| 3 | 2 | ... |
| 4 | 3 | ... |
| 5 | 2 | ... |
我们有大约200个MySQL用户,每个用户都与一个或多个部门相关联(通过一个简单的用户名/部门ID表)。我们希望仅限制每个用户对其正确记录子集的访问(SELECT,UPDATE)。
例如,一个用户可能只能查看和更新与他们所属部门相关的记录。
SELECT * FROM DataTable
用户"Bob"与1和3部门相关联,应返回记录1、2和4。对于与1部门相关联的用户"Alice",应仅返回记录1和2。
如何最好地实现这一点?