PDA

View Full Version : سوال: کار با تریگر.....



mohammad_amini
سه شنبه 13 خرداد 1393, 07:26 صبح
سلام به همه

یه سوالی برام پیش اومده لطفا اگه می تونید راهنمایی کنید.....:گریه::گریه::گریه:

من یه سایتی دارم طراحی می کنم. تو یک قسمت از سایت کاربری که عضو شده می خاد پستی ارسال کنه ، می خام با استفاده از یه تریگر ای دی کاربر و ای دی اون پسته که در حال اضافه شدنه تو یه جدول دیگه به صورت خودکار اضافه بشه....:متفکر::کف::متفکر:


حالا نمی دونم ای دی کاربر رو چطوری توی تریگر لحاظ کنم.


لطفا کمک کنید.....:ناراحت::ناراحت::نارا حت:

Unique
سه شنبه 13 خرداد 1393, 09:01 صبح
اگه فیلد ID کاربر u_id باشه میشه با NEW.u_id توی trigger بهش ارجاع داد.

mohammad_amini
سه شنبه 13 خرداد 1393, 09:12 صبح
من سه تا جدول دارم به اسم user , post , user_post .

حالا می خوام یه تریگر چنان بنویسم که اگه کاربری که پستی را ارسال می کنه ، ID کاریر و ID پست در جدول user_post به صورت خودکار اضافه بشه.

من در جدول user فیلدی به نام postid ندارم که راحت ازش استفاده کنم.

Unique
سه شنبه 13 خرداد 1393, 22:36 عصر
شما چرا میخوای از trigger استفاده کنی ؟
اصلا چرا post ها را با user توی یک جدول دیگه گذاشتین ؟ بهتر نبود توی جدول post یک فیلد برای user داشتین و قائدتا موقع لاگین id کاربر لاگین شده را جایی نگه میدارین یا میتونین پیداش کنین و اصلا نه trigger میخواد و نه این مشکلات.

mohammad_amini
یک شنبه 25 خرداد 1393, 02:05 صبح
خوب تریگرها کار رو راحت تر می کنن. پس چه بهتر از اونا استفاده بشه.

این روشی که خودم رفتم نرمال سطح سومه. اگه بخوام اون جوری که شما گفتین انجام بدم خوب سطح نرمالیته میاد سطح 2 که برای پیوندها سخت تر عمل می کنه...

plague
یک شنبه 25 خرداد 1393, 10:18 صبح
بخای تریگر بنویسی باید بین تیبل posts , users یه کلید مشترک باشه که مشخص کنه کدوم پست ماله کدوم یوزره که شما نداری وبرای همین نمیتونی id های مشترک بین دو تیبل رو تشخیص بدی و با تریگر به تیبل سوم ببری

و البته وقتی اون کلید رو اضافه کنی دیگه نیازی به تریگر و این حرفا نیست چون با همون 2 تیبل مشخص میشه که کدوم پست ماله کدوم یوزره

این کاری که شما میخای بکنی اسمش هست لقمه رو دور سر پیچوندن نه نرمال سازی