vb_nima
چهارشنبه 25 مرداد 1391, 23:50 عصر
با سلام.
دوستان خبره برنامه نويس در كاراهاتون آيا اين دو سناريو را در نظر ميگيريد يا بيخيالش ميشيد؟ من خودم تو آموزشها و پروژه هاي كوچك ديدم اصلا به اين موارد توجه نمي شه در صورتي كه اين موارد باعث ايجاد ناسازگاري در ديتاهامون ميشه.
اين دو سناريو اينه:
الف- در بيشتر پروژه ها از جداول گروه و محصول استفاده مي كنيم كه كليد جدول گروه را در جدول محصول تكرار ميكنيم تا متوجه بشيم اين محصول جز كدوم گروه هست. و معمولا ميان براي ادمين امكان حذف و درج و ويرايش گروه را ايجاد ميكنند.حالا فرض كنيد مدير يك وبسايت يك فرد عادي مياد يك گروه را حذف ميكنه و با اين كار تمام اون محصولات كه كليد اصلي اين گروه را دارند نامعتبر ميشن و ديگه دسترسي هم بهشون امكان پذير نيست.
ب- معمولا هم براي مشخص كردن اينكه كدوم خريدار چه محصول خريده از يك جدول ميانجي مثلا به نام "سبد" كه كليد اصلي مشتري و كليد اصلي محصول در اون بصورت كليد خارجي هست استفاده ميشه.حال فرضا از جدول محصول يك محصول حذف بشه يا از جدول خريدار يك حريدار حذف بشه در اينصورت جدول سبد دچار ناسازگاري ميشه و مثلا وقتي يك گزارش از سبد گرفته ميشه بايد بجاي كليدهاي اصلي مقادير نام اونها در گزارش بياريم كه در صورت حذف اصلا اون كليدها ديگه معتبر نيستند.
حالا سوالم اينه دوستان اين دوتا سناريو را در كارهاشون مدنظر قرار ميدن؟
اگر قرار ميدن بفرمائيد چه راهكارهايي را اتخاد ميكنيد؟راهكار استاندارد چيه؟
جواب خودم: به نظر خودم دوتا كار ميشه كرد ولي نمي دونم استاندارد هست يانه:
يك: مثلا قبلا از حذف گروه بررسي كنيم اگر محصولي زيرمجموع اون بود به كاربر بگيم كه ابتدا محصولات زير مجموعه را حذف يا منتقل كن سپس حذف كن.
ب- حذف واقعي انجام نديم و مثلا يك فيلد deleted به جدول گروه اصافه كنيم و در صورتي كه گروه را خواستيم حذف كنيم فقط مقدار اين فيلد را true كنيم.
كلا نظر شما چيه؟
ببخشيد طولاني شد.
دوستان خبره برنامه نويس در كاراهاتون آيا اين دو سناريو را در نظر ميگيريد يا بيخيالش ميشيد؟ من خودم تو آموزشها و پروژه هاي كوچك ديدم اصلا به اين موارد توجه نمي شه در صورتي كه اين موارد باعث ايجاد ناسازگاري در ديتاهامون ميشه.
اين دو سناريو اينه:
الف- در بيشتر پروژه ها از جداول گروه و محصول استفاده مي كنيم كه كليد جدول گروه را در جدول محصول تكرار ميكنيم تا متوجه بشيم اين محصول جز كدوم گروه هست. و معمولا ميان براي ادمين امكان حذف و درج و ويرايش گروه را ايجاد ميكنند.حالا فرض كنيد مدير يك وبسايت يك فرد عادي مياد يك گروه را حذف ميكنه و با اين كار تمام اون محصولات كه كليد اصلي اين گروه را دارند نامعتبر ميشن و ديگه دسترسي هم بهشون امكان پذير نيست.
ب- معمولا هم براي مشخص كردن اينكه كدوم خريدار چه محصول خريده از يك جدول ميانجي مثلا به نام "سبد" كه كليد اصلي مشتري و كليد اصلي محصول در اون بصورت كليد خارجي هست استفاده ميشه.حال فرضا از جدول محصول يك محصول حذف بشه يا از جدول خريدار يك حريدار حذف بشه در اينصورت جدول سبد دچار ناسازگاري ميشه و مثلا وقتي يك گزارش از سبد گرفته ميشه بايد بجاي كليدهاي اصلي مقادير نام اونها در گزارش بياريم كه در صورت حذف اصلا اون كليدها ديگه معتبر نيستند.
حالا سوالم اينه دوستان اين دوتا سناريو را در كارهاشون مدنظر قرار ميدن؟
اگر قرار ميدن بفرمائيد چه راهكارهايي را اتخاد ميكنيد؟راهكار استاندارد چيه؟
جواب خودم: به نظر خودم دوتا كار ميشه كرد ولي نمي دونم استاندارد هست يانه:
يك: مثلا قبلا از حذف گروه بررسي كنيم اگر محصولي زيرمجموع اون بود به كاربر بگيم كه ابتدا محصولات زير مجموعه را حذف يا منتقل كن سپس حذف كن.
ب- حذف واقعي انجام نديم و مثلا يك فيلد deleted به جدول گروه اصافه كنيم و در صورتي كه گروه را خواستيم حذف كنيم فقط مقدار اين فيلد را true كنيم.
كلا نظر شما چيه؟
ببخشيد طولاني شد.