我有一个SQL查询,可以在旧版本的MySQL4上运行,但不能在我当前的5.5版本上运行 我希望有人能看到我用这个看不到的东西。
select tblprefix_groups_permissions.permission_name
from tblprefix_groups_permissions, tblprefix_users, tblprefix_permissions
where tblprefix_groups_permissions.permission_name = tblprefix_permissions.permission_name
and tblprefix_groups_permissions.group_id = tblprefix_users.group_id
and (tblprefix_users.user_id = '==NUMERIC ID=='
and (tblprefix_permissions.permission_name = 'ADMIN::SETTINGS::VIEW'
or tblprefix_permissions.permission_name = 'ALL'))
对于它的作用,SQL语句应该是非常自我解释的,我没有看到挂断的位置。如果列表没有返回任何内容,则拒绝返回列表。
答案 0 :(得分:0)
看起来你错误地把引号放在这里:
ADMIN::SETTINGS::VIEW''
无论如何......你确定它适用于MySQL 4吗?
顺便说一句,你可以删除外括号。
答案 1 :(得分:0)
语句是正确的,我忽略了这样一个事实,即语句还会检查以确保Permission在主权限表中,即:tblprefix_permissions.permission_name我还没有将权限放入主权限表
所以这让我变得愚蠢或者只是累了LOL对不起家伙,虽然工作很好并且感谢快速回复