PDA

View Full Version : کدام طرح دیتابیس برای یک وب سایت مناسب تر است؟



hermat
جمعه 03 خرداد 1392, 10:15 صبح
سلام
می خواهم وب سایتی طراحی کنم که در آن کابران می توانند تشکیل گروه بدهند. این گروه ها ادمین هایی دارند که می توانند سطوح دسترسی تعریف کنند و آنها را به کاربران عضو گروه نسبت دهند. پس هر سطح دسترسی متعلق به یک گروه خاصی است و میان گروه ها مشترک نیست. حالا من بین دو طرح دو دل موندم. امیدوارم شما بتوانید راهنمایی کنید.

طرح اول:
http://i.stack.imgur.com/jcJEO.png




طرح دوم:
http://i.stack.imgur.com/A6hny.png

در طرح اول کوئری گرفتن سخت به نظر می رسد. در طرح دوم هر permission نمی داند که متعلق به کدام گروه است در عوض در تیبل PermissionOwner این مالکیت مشخص شده است. در تیبل roles هم یک کلید خارجی group اضافه شده است که اگر چه زاید به نظر می رسد، اما کار پرس و جوی داده را راحت تر می کند.
حال سوال من این است که آیا طرح دوم، طرحی اصولی است؟

hermat
جمعه 03 خرداد 1392, 16:44 عصر
فکر کنم جواب را فهمیده باشم. بهتر هست که تیبل role ها را حذف کرد و در عوض در تیبل groupMembership نقش هر کاربر را مشخص نمود.

مهدی هادیان2
شنبه 04 خرداد 1392, 17:23 عصر
بسم الله الرحمن الرحیم
با سلام
طرحی به ذهنم رسید؛ خواستم خدمتتون عرض کنم تا راجع بهش فکر کنید:
راجع به جداول user,group,Permision که حرفی نیست؛ باید وجود داشته باشند.
در جدول group فیلد PermisionId به عنوان کلید خارجی آورده میشود که معلوم شود سطح دسترسی هر گروهی چیست.
از طرفی جدول واسطی بین کاربر و گروه به نام role میگذاریم که فیلدهای userId,groupId به عنوان کلیدهای خارجی آورده میشود.
موفق باشید.