PDA

View Full Version : فرمت نوشتاری تریگر در سی شارپ دات نت



afsaneh2009
دوشنبه 19 مرداد 1388, 16:18 عصر
سلام به همه اساتید
من به تازگی دارم با سی شارپ دات نت 2005 کار می کنم حالا در برنامم نیاز دارم که تریگر در برنامم بذارم اما به فرمت نوشتاری تریگرم ایراد می گیره .میشه لطفا راهنماییم کنین چه جوری اونو بنویسم
ممنون میشم

khorsandreza
دوشنبه 19 مرداد 1388, 18:02 عصر
سلام
منظورتان از نوشتن تریگر در سی شارپ چیه تا انجا که اطلاع دارم تریگر را در دیتا بیس باید نوشت حالا این دیتا بیس خواه اس کیو سرور باشه و یا غیره
شکل کلی در اس کیو سرو به شکل زیر است



USE

[ِYour DataBase]

GO
SET


ANSI_NULLSON

GO
SET


QUOTED_IDENTIFIERON

GO
-- =============================================
ALTER


TRIGGER [dbo].[MAINDATAUP]

ON [dbo].[TBName]
AFTER UPDATE
AS
Declare


@XToDay Char(12),@xcode Char(10)

Set


@XToDay =(select dbo.GetDate().ToString())

Set


@xcode =(Select CODE From Inserted)

BEGIN
SETNOCOUNTON;
UPDATE


TBNameSET END_EDIT =@XToDay

Where


CODE=@xcode


END

afsaneh2009
دوشنبه 19 مرداد 1388, 23:21 عصر
آخه من مثلا در برنامم در محیط ویژوال سی شارپ دات نت یک دکمه می ذارم مثلا دگمه اضافه کردن اطلاعاتی که در یک سری textbox کاربر وارد می کنه بعد می خوام وقتی این دکمه اضافه شدن را کاربر روش کلیک می کنه در داخل کدی که در پشت دکمه نوشته شده مثلا یک تریگری هم باشه که یک کارخاصی را انجام بده.خب این کدها چون در محیط سی شارپ دات نت نوشته میشه برای نوشتن تریگر در این محیط من اشکال دارم. امیدوارم منظورما به خوبی رسونده باشم.
ممنون اگه راهنماییم کنید.
اگه هم دارم راها اشتباه میرم لطفن کمکم کنید.

khorsandreza
سه شنبه 20 مرداد 1388, 01:08 صبح
دوست من تریگر عملیات خود را زمانی انجام میدهد در داخل Table یکی از سه مورد تغییرات (Insert,Updete,Delete ) اتفاق بیفته در مثال پست 2 وقتی کاربر رکوردی را اصلاح میکند تاریخ تغییرات را در فیلد End_Edit ثبت میکند .
حال دقیقا مشکلتان بیان بفرمائید راحتر میشه جواب داد. ضمننا شما تریگر را از طریق رویداد کلید نمیتوانید اجرا کنید.

afsaneh2009
سه شنبه 20 مرداد 1388, 10:10 صبح
پس در پروژه های مختلف مثلا در سیستم ثبت نام دانشگاه یا مثلا سیستم انبارداری که از دکمه ها و toolbox های مختلف تشکیل شده و یک پایگاه داده هم داره که از یک سری جدول تشکیل شده دقیقا در کدام قسمت من باید تریگرهاما تعریف کنم.اگه با visual studio.net 2005 کار کردین لطفا بهم بگین کجا تریگرهارا اضافه کنم.
چون میگین که داخل رویداد دکمه نمیشه

afsaneh2009
سه شنبه 20 مرداد 1388, 22:13 عصر
چرا جوابم را نمی دین؟
اگه سوالم خیلی مسخرس چیکار کنم، خب بلد نیستم گفتم از شماها کمک بگیرم
سوال پرسیدن که عیب نیست

mike
چهارشنبه 21 مرداد 1388, 00:23 صبح
سلام
1-می تونید توضیح بدید که منظور شما از تریگر،دقیقا چیه و کاری که از تریگر انتظار دارید چیه؟ با کمال احترام فکر می کنم که شما برداشتتون از تریگر با مفهوم تخصصی آن کاملا متفاوت هست.تو همین بخش اگه تریگر رو سرچ کنید به نتایج خوبی می رسید.

2-می تونید بگید که دقیقا برنامه شما قراره چی کار کنه؟ اینجوری بهتر می شه راهنمایی کرد.
3-فکر میکنم یه خورده باید در مورد ADO.NET مطالعه کنید.

khorsandreza
چهارشنبه 21 مرداد 1388, 08:56 صبح
چرا جوابم را نمی دین؟
اگه سوالم خیلی مسخرس چیکار کنم، خب بلد نیستم گفتم از شماها کمک بگیرم
سوال پرسیدن که عیب نیست

سلام
دقیقا پرسیدن عیب نیست
ما هم از این نوع سوالات برام پیش امده البته ما متوجه سوالات مشده بود همانطور در پستهای قبلی اشاره شده سوالتان ساده بیان کنید .
پیشنهاد میکنم اول با کارهای ساده شروع کنید یک مقدار که به ساختار بانک اطلاعاتی اشنا شدید سراغ تریگرها SP , View بروید

ASKaffash
چهارشنبه 21 مرداد 1388, 09:47 صبح
چرا جوابم را نمی دین؟
اگه سوالم خیلی مسخرس چیکار کنم، خب بلد نیستم گفتم از شماها کمک بگیرم
سوال پرسیدن که عیب نیست

سلام
دوست عزیز شما با مفهوم تریگر مشکل دارید همانطور که دوستان گفتند تریگر ربطی به #C ندارد ودر لایه بانک اطلاعاتی اتفاق می افتد به نظر من شما تئوری تریگر را مطالعه کنید اینهم لینک :
صفحه 54 این لینک : http://barnamenevis.org/forum/showthread.php?t=106494