اذهب إلى المحتوى

السؤال

نشر

انا بسوي متجر و احترت هل الموظفين و الزبائن اجعلهم في نفس الجدول (Table) لكن مع بعض الإضافات مثل اضيف صلاحية (Role) عشان كل مستخدم يختلف و اضيف رقم الموظف (Employee_num) عشان احدد الموظف و يكنون يقبل ان يكون فاضي (Nullable) ولا الأفضل اجعل الموظفين و المستخدمين في جداول مختلفة (Table) وش افضل تصميم؟ 

Recommended Posts

  • 0
نشر

هل الموظفين والزبائن سيقومون بتسجيل الدخول على جهازك ؟ وهل لو سيقومون بتسجيل الدخول هل سيتم توفير واجهة واحد للإثنين ؟ ام لكل واحد نظام منفصل ؟

أولا إذا كان الإثنين سيقومون بتسجيل الدخول لنفس النظام فالأفضل عدم فصل الإثنين بل جدول واحد ووضع صلاحية لكل مستخدم ولكن يمكنك حينها إنشاء مثلا ثلاث جداول . جدول users وهو الذي سيتم حفظ البريد وكلمة المرور والصلاحية وجدول للموظف وجدول للزبائن . وتقوم بربط جدول الموظفين والزبائن بدول ال users .

أما إذا كانت الواجهة ليست واحدة كمثلا لتطبيقات المتاجر هنا واجهة منفصلة خاصة بالموظفين يقومون فقط فيها بتسجيل الدخول و الدخول على لوحة التحكم . والزبائن لهم نافذة مختلفة تماما لتسجيل الدخول لهم فقط والشراء من الموقع . هنا بالطبع سيكون من الأفضل فصل الجدولين وربط كل جدول بالواجهة الخاصة به وهذا الأمر هو الشائع.

لهذا يجب عليك تحديد ما الذي تريد تنفيذه في مشروعك وما هي الخصائص التي فيه لأن لكل شئ الطريقة الأفضل له ولا توجد طريقة جيدة لجميع الأمور.

  • 0
نشر

الأفضل استخدام جدول Users أساسي للمعلومات المشتركة والمصادقة، مع جداول متخصصة للموظفين والزبائن، بالتالي ستجمع بين ميزات كل منهما، وذلك نمط يسمى وراثة الجداول أو جدول النوع الفائق والنوع الفرعي Supertype/Subtype.

وستحصل على مصادقة مركزية لأنّ تسجيل الدخول يتم دائمًا عبر جدول Users، أيضًا لا تكرار للمعلومات المشتركة الاسم، البريد الإلكتروني، إلخ، فيتم تخزينها مرة واحدة.

ومعلومات متخصصة ومنظمة حيث كل نوع مستخدم له جدوله الخاص ببياناته المحددة، وسهولة التوسع في حال أضفت نوع مستخدم جديد وليكن موردين، فستضيف جدول Suppliers جديد يربط بـ Users.

ويدعم حالة الموظف هو زبون، أي متاح للمستخدم أن يكون له سجل في Users وسجل مقابل في Employees و سجل مقابل في Customers لو أردت ذلك، بالإضافة إلى أنّ استعلامات SQL ستكون واضحة.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...