1

以下场景:我目前正在尝试使用连接等使用 MySQL 构建一个复杂的权限系统。它的大部分工作就像一个魅力,但我现在的问题是:

首先,表格的设置:(对不起外部链接,但编辑器目前似乎不适合我)。

表格:http://pastebin.de/36727 数据: http: //pastebin.de/36726

好的:

用户通过成为组的成员来获得权限。(这样可行!)

所以,但是现在,我希望能够为用户提供特殊权限(不包含在组中)

我怎么能这样做?那是我的尝试(但问题是,如果存在特殊权限,则结果中不会返回):

SELECT DISTINCT
    `user`.`username`,
    `right`.`name`

FROM
    `user`

INNER JOIN
    `user_group` ON
        `user`.`id` = `user_group`.`user_id`

INNER JOIN
    `group` ON
        `user_group`.`group_id` = `group`.`id`

INNER JOIN
    `group_right` ON
        `group`.`id` = `group_right`.`group_id`

INNER JOIN
    `right` ON
        `group_right`.`right_id` = `right`.`id`

LEFT JOIN
    `user_right` ON
        `user_right`.`user_id` = `user`.`id` AND
        `user_right`.`right_id` = `right`.`id`

WHERE
    `user`.`username` = 'Domi'

我希望你知道我的意思,因为我的英语不是那么好。

4

0 回答 0