کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی
کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی

Teigger در Sql



Create Trigger [dbo].[Trg_Update] On [dbo].[myTable]
After Update 
As Begin
Update myTable Set ModifyDateTime = GETDATE()
Where myTable.id = (Select d.id from deleted d)
End


ساخت تریگری که بعد از ویرایش فیلد ModifyDateTime پر می شود  البته با شرط id 


After Update Trigger در SQL یک رویه ذخیره شده در جدول پایگاه داده است که پس از اجرای موفقیت آمیز عملیات Update در جدول مشخص شده ، به طور خودکار فراخوانی یا راه اندازی می شود .برای مواردی که شروع نشده اند ، از دستور Update برای اصلاح داده ها در ردیف های موجود جدول داده استفاده می شود.


CREATE TRIGGER [dbo].[after_update] ON [dbo].[MYTABLE]
AFTER UPDATE
AS
BEGIN
    DECLARE @ID INT

    SELECT @ID = D.ID
    FROM inserted D

    UPDATE MYTABLE
    SET mytable.CHANGED_ON = GETDATE()
        ,CHANGED_BY = USER_NAME(USER_ID())
    WHERE ID = @ID
END




Inserted and Deleted Tables in SQL
  1. If any record is being inserted into the main table, a new entry, of the record being created, is also inserted into the INSERTED table.
  2. If any record is being deleted from the main table, an entry of the record is being deleted, is inserted into the DELETED table.


جداول inserted یا Deleted در SQL  : 


1-اگر رکوردی در جدول اصلی insert یا Delete شود ، یک ورودی جدید از رکورد در حال ایجاد یا حذفی  نیز در جدول  Deleted ، Inserted درج میشود . اینها برای مواردی هستند که شما میخواهید Update در همان ردیف انجام شود نه کل ستون پس نیاز به id دارید !!!


SET NOCOUNT ON/OFF statement controls the behavior in SQL Server to show the number of affected rows in the T-SQL query.



عبارت Set NOCOUNT ON/OFF برای نمایش یا عدم نمایش ردیف های متاثر از تغییر در کوئری T-SQL یعنی زمان ON بودن تعداد رکوردهای اضافه ، آپدیت یا حذف شده را نمایش خواهد داد.



مثلا در اکسس برای گرفتن تعداد رکوردهایی که حاصل موفقیت آمیز اکشن کوئری ها هستند از ویژ گی زیر استفاده می شود البته به موضوع تریگر ربطی ندارد ولی برای فراگیران اکسس مطلب جالبی است.


Database.RecordsAffected property

















نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد