نوشته شده توسط
تبسم ساینا
مشکل اینه که درج در جدول A در تریگر انجام نمیشه و طی یه استور پروسیجر انجام میشه.چجوری میتونم به ItemName جدول A درحالی که در یه استور پروسیجر اضافه شده , دسترسی پیدا کنم و join انجام بدم ؟
سلام
از پاسخ شما روشن هست که شناختی نسبت به Trigger نداری، این مبحث رو لازمه که کامل مطالعه کنی.
اگه این مبحث رو خوب یاد بگیری، مطمئن باش که به راحتی میتونی از این دست کارها رو انجام بدی
الان فقط میتونم این رو بهت بگم که یک جدول مجازی به نام inserted داخل trigger در دسترس هست که مقادیر اضافه شده به جدول
رو نگهداری میکنه. همونطور که تو پست قبلی بهت گفتم اگه این جدول رو با جدول B به صورت left outer join ارتباط بدی، میتونی سطرهایی
که در جدول B نیستن رو شناسایی کنی، و باز با مقادیر همین inserted اونها رو پر کنی. ( کل قضیه فقط نیاز به یک فرمان insert داره، نه بیشتر )
یه چیزی تو این مایهها:
INSERT INTO B
SELECT i.Id, i.Column1, i.Column2, i.Column3
FROM Inserted i
LEFT OUTER JOIN b on b.Id = i.Id
WHERE b.Id is NULL
به همین راحتی
صبا صبوحی