PDA

View Full Version : حرفه ای: امکان خطا در حالت های مختلف



beh3000
دوشنبه 05 اسفند 1392, 09:05 صبح
سلام

به زبان php دارم cms مینویسم یه جایی رسیدم که توی ارسال پست باید داخل سه تا جدول یا دوتا جدول یا یک جدول insert بشه و بعدش هم یک تریگر اجرا بشه که از داده های سه تا جدول یا دو جدول یا یک جدول استفاده میکنه ... اینو چجوری باید بنویسم که مشکلی پیش نیاد ؟؟؟



توی ارسال پست شاید کاربر نهایی فقط مطلب پست کنه در این شرایط فقط توی جدول ذخیره میشه و باید تریگر اجرا بشه
شایدم مطلب + گالری عکس پست کنه مطلب در یک جدول و گالری در جدول دیگه درج میشن و سپس تریگر باید اجرا بشه
شایدم مطلب + آهنگ پست کنه که مطلب در یک جدول و آهنگ در جدول دیگه درج میشن و سپس تریگر باید اجرا بشه
شایدم مطلب + گالری عکس + آهنگ پست بشه که داخل سه تا جدول هستند و سپس ...


این رو هم در نظر داشته باشین که مطلب یک رکورد میشه داخل جدول خودش و گالری عکس و آهنگ ممکنه چند تا رکورد باشن تو جدول خودشون ... اصلا شاید از تریگر نمیشه استفاده کرد تو این شرایط !! از پروسیجر چی ؟؟ میشه استفاده کرد ؟؟؟ در هر حالت چقدر امکان خطا وجود داره که مثلا یکی اجرا بشه و دیگری نه ؟؟؟؟

جوابی که به این تاپیک میدین خیلی خیلی مهمه توی پروژه من لطفا دقت کنین ... مرسی از همه دوستان

MMSHFE
دوشنبه 05 اسفند 1392, 09:28 صبح
اگه تراکنشها وابسته به هم هستن، توی Transaction بگذارین (باید از InnoDB استفاده کنید). اینطوری اگه هرکدوم به خطا برخورد میتونید RollBack رو صدا بزنید تا عملیات برگشت بخوره. ضمناً Trigger سمت MySQL هست و به PHP ربطی نداره که اجرا بشه یا نه ولی MySQL تا حالا ندیدم مشکلی توی اجرای Triggerها داشته باشه یا موردی باشه که اجرا نکنه.