私はたくさんのテーブルを持っています、以下はテーブルリストです:
- System_User
- Acc_Roles
- Acc_User_role_map
- Acc_Permission
- Acc_Role_Permission_Map
- Acc_Menu_Items
- Acc_SubMenu
- Acc_Menu
上記の表のフィールドと関係について説明します。
そして私の質問はここに行きます:
select acc_menu_items.* from acc_menu, acc_menu_items, acc_submenu, system_user, acc_user_role_map, acc_roles, acc_role_permission_map, acc_permission
where system_user.user_id=acc_user_role_map.user_id
and acc_user_role_map.ROLE_ID=acc_roles.id
and acc_roles.id=acc_role_permission_map.ROLE_ID
and acc_role_permission_map.PERMISSION_ID=acc_permission.id
and acc_permission.MENUITEM_ID=acc_menu_items.id
and acc_menu_items.menu_id=acc_menu.id
and acc_menu_items.SUBMENU_ID=acc_submenu.id
and system_user.USER_ID='userName' and acc_menu.menu_name='menuName';
私の問題は、上記のクエリを実行すると、空が表示されることです。
そのクエリで、テーブル名「acc_submenu」と「acc_menu_items.SUBMENU_ID=acc_submenu.id」を削除すると
そして、データを取得しているのは問題ありません。サブメニューリストを配置すると、空になります。
不明な点がある場合は、完全なデータをアップロードします。
誰かアイデアはありますか?
編集済み
以下の画像リンクを見つけてください
http://www.4shared.com/photo/2Ml256my/Untitled-1-copy.html
私の質問は:
select acc_menu_items.* from acc_menu, acc_menu_items, acc_submenu, system_user, acc_user_role_map, acc_roles, acc_role_permission_map, acc_permission
where system_user.user_id=acc_user_role_map.user_id
and acc_user_role_map.ROLE_ID=acc_roles.id
and acc_roles.id=acc_role_permission_map.ROLE_ID
and acc_role_permission_map.PERMISSION_ID=acc_permission.id
and acc_permission.MENUITEM_ID=acc_menu_items.id
and acc_menu_items.menu_id=acc_menu.id
and system_user.USER_ID='setupadmin' and acc_menu.menu_name='Administrator';
上記のクエリはデータを取得しています。「Administrator」を「MainMenu」に置き換えても機能しません。何が問題なのか説明してください。
私に何ができる?何か案は?