PDA

View Full Version : ايجاد جدول log براي كاربران



mehdis2
یک شنبه 14 آذر 1389, 00:02 صبح
سلام من ميخوام يه يه جدول لوگ داشتعه باشم كه مشخص بشه هر ركورد از هر جدول توسط چه كسي ايجاد و بعد ويرايش يا حذف شده(چرخه عمر ركورد:لبخند:) جطور يه جدول ميتونم داشته باشم براي تمام جدول ها و كاربران

mo.jalilian
یک شنبه 14 آذر 1389, 00:21 صبح
فکر می کنم که یک رابطه چند به چند برقرار هست و شما باید از یک جدول واسطه استفاده نمایید که شامل کلیدهای کاربر، جدول، عمل و ... باشد

mehdis2
یک شنبه 14 آذر 1389, 02:15 صبح
مرسي من اومدم يه جدول گرفتم به اسم action كه فيلد هاش عبارتند از:
كد فعاليت- كد كاربري - نوع عمل(ايجاد يا ويرايش يا حذف)- تاريخ- ساعت- كد جدول(هر جدول كدي دارد تا مشخص شود عمل رويه كدام جدول بوده)- كد اصلي جدول(كليد اصلي جدول مربوطه براي پيگيري)
و در هر جدول هم ميخوام كد آخرين عمل رو ذخيره كنم كه با يه دستور نميشه و سرعت مياد پايين:افسرده:

حمیدرضاصادقیان
یک شنبه 14 آذر 1389, 07:33 صبح
سلام.
شما برای اینکار باید در برنامه تون یک کلاس داشته باشید به نام Userlog . در این کلاس بیاید عمل درج رکورد در جدول لاگ، عمل حذف، مشاهده ، گزارش رو پیاده سازی کنید.
بعد یک نمونه از این کلاس ایجاد کرده و در جاهای مختلف برنامه که هرعملی انجام میدید به تابع مربوط به درج مقدار پاس داده و اونو صدا بزنید.
تا رکورد مزبور در جدول لاگ درج شود. یا اینکه بیاید روی تک تک جداول تریگر بنویسید برای هر سه عمل insert,update,delete .
که من خودم روش اول رو پیشنهاد میکنم چون از لحاظ بازدهی خیلی بهتر عمل خواهد کرد.

mehdis2
یک شنبه 14 آذر 1389, 10:54 صبح
مرسي اقاي صادقيان
من هم همين كارو كردم ولي ميخوام آخرين عملي هم كه كاربر انجام داده (با نام كاربر - تاريخ و ساعت) در كنار ركورد بايد چطور از چند تا ركورد عمل joint رو با آخرين تاريخ ساعت بدم تا منار هر ركورد مشخصات آخرين عمل هم بياد