PDA

View Full Version : سوال درباره تریگر ها



mahdi_negahi
یک شنبه 22 اردیبهشت 1387, 13:57 عصر
سلام

می خواهم بدونم به اجرا شدن Trigger ها چقدر میتوان اطمینان باید کرد؟

من یک Table دارم به نام table1 که در این جدول کلید خارجی از جدول دیگر دارد(Table2) ، در هنگام Insert من یک Trigger دارم که وظیفه این تریگر این است که فیلدی از جدول Table2 بخواند و در جدول table1 بریزد .. در همان سطری که تازه اضافه شده

البته من تغییرات آن را با trigger کنترل کردم

میخواهم بدونم که آیا این کار درست است ؟؟ البته دلیل این کاره من است که من باید 4 JOIN بزنم و برای جلوگیری از این کار کرده ام

AminSobati
دوشنبه 23 اردیبهشت 1387, 15:03 عصر
سلام مهدی جان،
شاید بهتر باشه از INSTEAD OF استفاده کنید، نه AFTER.
اما در مورد اصل داستان، اگر دارید Denormalize میکنین، کار غلطی نیست. با این روش از Join اجتناب میکنید اما یادتون باشه تغییر یا اصلاح در فیلد جدول Parent باید به رکوردهای متناظرش در Child هم منتقل بشه. ضمنا اگر هزینه این Join خیلی زیاده چنین کاری توصیه میشه، در غیر اینصورت ضرورتی نیست، بگذارید Join انجام بشه

mahdi_negahi
دوشنبه 23 اردیبهشت 1387, 16:04 عصر
استاد ثابتی در مورد

اما یادتون باشه تغییر یا اصلاح در فیلد جدول Parent باید به رکوردهای متناظرش در Child هم منتقل بشه.

حق با شماست .


ضمنا اگر هزینه این Join خیلی زیاده چنین کاری توصیه میشه، در غیر اینصورت ضرورتی نیست، بگذارید Join انجام بشه

ببینید من با این JOIN زیاد سرو کار دارم و باید زیاد این JOIN بزنم و برای رسیدن به جواب باید 3 تا JOIN بزنم و اینکه این 4 جدول از جداول اساسی برنامه است ، به نظر خودم که هزینه زیاد میشود

استاد ثباتی آیا راهی وجود دارد که در جداول داده(به مقدار قابل توجه) وارد کنیم و تست بگیریم ، قبل از اینکه برنامه حاضر بشه .

AminSobati
دوشنبه 23 اردیبهشت 1387, 17:55 عصر
میتونین در یک Loop خودتون رکورد با مقادیر تصادفی بسازین و Insert کنین. شاید Utility هم براش وجود داشته باشه اگر در اینترنت بگردین. تا جایی که یادمه Power Designer میتونست Sample Data تولید کنه

AmirAlimadadi
چهارشنبه 25 اردیبهشت 1387, 10:09 صبح
سلام دوستان
من می خوام برای یه جدول trigger درست کنم اگه ممکنه به من یه منبع معرفی کنین و یا طرز ساختن اون رو برای من بنویسین. ممنون

_alish_
چهارشنبه 25 اردیبهشت 1387, 11:44 صبح
نرم افزار Red Gate از سايت
https://www.red-gate.com/
كه جناب آقاي شه شهاني به بنده پيشنهاد نموده اند و بسيار جالب و مفيد بعنوان ابزار كمكي در زمينه ديتابيس مي باشد . و ركود هم جنريت مي كند.

Arghavan_Reza
چهارشنبه 25 اردیبهشت 1387, 18:20 عصر
در SQL Server Books Online
Create Trigger را جستجو نمایید.

mahdi_negahi
پنج شنبه 26 اردیبهشت 1387, 11:43 صبح
نرم افزار Red Gate از سايت
https://www.red-gate.com/
كه جناب آقاي شه شهاني به بنده پيشنهاد نموده اند و بسيار جالب و مفيد بعنوان ابزار كمكي در زمينه ديتابيس مي باشد . و ركود هم جنريت مي كند.



مرسی از راهنمایی خوبت ، شما کرکش را دارید ؟؟؟؟

Arghavan_Reza
پنج شنبه 26 اردیبهشت 1387, 17:18 عصر
دوست عزیز من مشکلی در درست کردن آن دارم لطفا پست را با دقت بخوان
خوب نخوانده ای!

سلام دوستان
من می خوام برای یه جدول trigger درست کنم اگه ممکنه به من یه منبع معرفی کنین و یا طرز ساختن اون رو برای من بنویسین. ممنون