PDA

View Full Version : درج نام کاربر در جدولی بااستفاده از trigger



tanha_nabash
سه شنبه 03 اردیبهشت 1387, 16:41 عصر
در پایگاه داده من جدولی است که باید نام کاربر وتاریخی که کاربر اطلاعات را پاک و... کرده است را درج کند(با trigger)نام کاربر ی هم تعریف کردم کدام تابع این کار را انجام می دهد

shaghaghi
چهارشنبه 04 اردیبهشت 1387, 07:10 صبح
به کمک تابع ()User_Name

e-shahshahani
چهارشنبه 04 اردیبهشت 1387, 09:11 صبح
اگر بتونی از تریگر استفاده نکنی و از یه طریق دیگه این کار را انجام بدی بهتره.
مثلا وقتی کاربر داره چیزی را پاک می کنه، نام و کد اون را به دست بیاری و ذخیره کنی.

اینجوری از مشکلات تریگر ها هم خلاص میشی

tanha_nabash
چهارشنبه 04 اردیبهشت 1387, 16:34 عصر
می شود یک کد کامل بنویسید؟

shaghaghi
پنج شنبه 05 اردیبهشت 1387, 08:52 صبح
می شود یک کد کامل بنویسید؟
سلام
فرض بفرمایید میخواهیم ورود اطلاعات به جدول پرسنلی که شامل دو فیلد نام و کد است را، در جدول tbl_Log ثبت نماییم:


CREATE TRIGGER tr_Insert_tbl_Employee
ON dbo.tbl_Employee
After INSERT
AS

Declare @count Char(10)
SET @count = CONVERT(char, @@ROWCOUNT) --Number of Inserted Rows

WHILE NOT @count=0
BEGIN
INSERT tbl_Log(tblName,UserName,EditTime,Field1,Field2,St atus)
select 'tbl_Employee',user_name(),Getdate(),Inserted.CODE ,Inserted.Name,'Insert'
from Inserted
set @count=@count-1
END