هادی صفرزاده
هادی صفرزاده
خواندن ۲ دقیقه·۸ ماه پیش

پیشنهاد جدول دیتابیس بهینه برای برنامه مدیریت پروژه

اخیرا روی یه سیستم مدیریت پروژه دست ساز دارم کار میکنم با اینترفیس تلگرام و بَک PHP؛

سیستم بک رو MVP ساختم و وصلش کردم به تلگرام که درگیری فرانت فعلا (شایدم هیچوقت) نداشته باشم و نسخه اولیه پروژه رو بیاریم بالا.

اما چیز جالبی که میخوام در موردش بنویسم اینه که من جدول وظایف و جزئیات وظیفه رو تفکیک شده ساختم که بنظرم توسعه رو برام واقعا ساده تر کرده.

الان یه جدول دارم به اسم Entries که توش ورودی های مختلف از نوع وظیفه، یادآور، ایده جدید و... وارد میکنم!

اما شاید سوال پیش بیاد که خب وظیفه و مثلا یادآور هرکدوم جزئیات متفاوتی دارن که چرا همه تو یه جدول وارد شدن...

مثلا وظیفه تاریخ انجام، پروژه، وضعیت وظیفه، مسئول و... داره که یادآور تقریبا هیچکدوم رو نداره (به جزء تاریخ شایدم پروژه...)

کاری که من اکردم اینه که برای جزئیات یه جدول دیگه ساختم و وصلش کردم به جدولی ورودی ها؛

یه جدول دیگه دارم به اسم entery_details که توش 3 تا ستون فقط دارم:

آیدی_ورودی
عنوان
مقدار

اینطوری برای هر ورودی یک آیتم خاص میتونم تعریف کنم مثلا یه ورودی وظیفه دارم با آیدی 11 به این شکل:

11--پست تو ویرگول--تولید محتوا--تاریخ ایجاد

جدول جزئیات اینطوری میشه:

وظیفه 11--مسئول--خودم
وظیفه 11--وضعیت--درحال انجام
وظیفه 11--پروژه--برندسازی شخصی

این 3 تا آیتم لینک هستن به اون یک آیتم تو جدول ورودی ها یعنی اگر اون ورودی خاص از جدول پاک بشه این 3 تا هم باهاش پاک میشن.

حالا کارایی ش چیه

  1. میتونم هر نوع ورودی ای با جزئیات مختلف داشته باشم و نیاز نیست برای هر نوع ورودی جدول جدید بسازم یا ستون جدید به جدول فعلی اضافه کنم، مثلا من میخواستم وضعیت وظیفه رو اضافه کنم اولش گفتم اوه باید دیتابیش رو تغییر بدم ستون وضعیت اضافه کنم ولی بعدش گفتم چه کاریه وضعیت رو هم میزام تو جزئیات چون اگر تو ورودی بزارم اون موقع یه ستون وضعیت دارم که فقط برای وظیفه ها پر شده و باقی ورودی ها وضعیت خالی دارن
  2. میتونم برای هر ورودی هر تعداد جزئیاتی که میخوام اضافه کنم و بعدا برای ورودی های مختلف گزارش های مختلفی بگیرم
  3. سرعت کارم سمت دیتابیس بیشتر شده


الان باید برم جایی نمیتونم بیشتر بنویسم بعدا وقت شد نوشته رو ویرایش میکنم اما اگر نشد شما با نظراتتون تکمیلش کنید...


مدیریت پروژهدیتابیسبهینه سازی دیتابیسساختار دیتابیس
مدیر محصول، مدیر پروژه، دیجیتال مارکتر، متخصص سئو، طراح سایت و طراح UI/UX از سال 1390 تا به امروز
شاید از این پست‌ها خوشتان بیاید