ورود

View Full Version : چطوری میشه گزارشی از رکورد های جدولم بر اساس تاریخ ایجاد یا ویرایش رکورد بوجود اورم؟



ir_ali_s
شنبه 09 اردیبهشت 1385, 08:00 صبح
چطوری میشه گزارشی از رکورد های جدولم بر اساس تاریخ ایجاد یا ویرایش رکورد بوجود اورم؟

Inspiration
شنبه 09 اردیبهشت 1385, 08:52 صبح
شما مستقیما نمی توانید چنین کاری کنید. مگر اینکه اطلاعات زمان ایجاد یا ویرایش رکورد را در خودتان ذخیره کرده باشید.
البته این اطلاعات در log فایل وجود دارد . اما به 2 دلیل استفاده نمی شود:
1- به راحتی نمی توانید آن را بخوانید .مگر از Tools هایی که وجود دارد خریداری کرده و استفاده کنید.
2- هیچ اطمینانی نیست که اطلاعات Log قبل از دسترسی شما پاک نشده باشد.
(مثلا Backup گیری باعث خالی شدن این فایل می شودو...)

h_baqery
شنبه 09 اردیبهشت 1385, 12:05 عصر
برای اینکار باید trigger های خاص بنویسد تا تمام اعمال کاربر ثبت شود.

ir_ali_s
شنبه 09 اردیبهشت 1385, 12:06 عصر
ممنون اقای inspiration:متفکر:

Maryam80
شنبه 09 اردیبهشت 1385, 16:18 عصر
اگر شما بخواهید این مدیریت را از طریق برنامه انجام دهید می توانید ،به ازای هر یک از جداول بانک اطلاعاتی که تراکنش های آن برای شما مهم است ،یک جدول تاریخچه (History Table) بسازید که فیلدهای آن می تواند شامل کلیداصلی بانک ،تاریخ ،نام کاربر سیستم ،نام Client و...و یک فیلد برای تعیین اینکه رکورد مورد نظر ایجاد (I)،ویرایش (E) و یا حذف (D) شده است،باشد.
در این صورت به راحتی می توانید به ازاء هر یک از رکوردهای مورد نظر تراکنش های آنرا گزارش بگیرید

Kamyar.Kimiyabeigi
یک شنبه 10 اردیبهشت 1385, 07:53 صبح
اگر شما بخواهید این مدیریت را از طریق برنامه انجام دهید می توانید ،به ازای هر یک از جداول بانک اطلاعاتی که تراکنش های آن برای شما مهم است ،یک جدول تاریخچه (History Table) بسازید که فیلدهای آن می تواند شامل کلیداصلی بانک ،تاریخ ،نام کاربر سیستم ،نام Client و...و یک فیلد برای تعیین اینکه رکورد مورد نظر ایجاد (I)،ویرایش (E) و یا حذف (D) شده است،باشد.
در این صورت به راحتی می توانید به ازاء هر یک از رکوردهای مورد نظر تراکنش های آنرا گزارش بگیرید
البته این روش خیلی خوبه چون اطلاعات رو خیلی Detail نگهداری میکنه ولی اگر صرفا" زمان ایجاد و ویرایش کافی باشه روش فوق مناسب نیست چون باعث افزونگی DATA میشه.

شما میتونین در هر جدول یک فیلد داشته باشین برای نگهداری تاریخ به صورت زیر:
1) برای نگهداری تاریخ ایجاد کافیه مقدار DFAULT VALUE را برابر ()GETDATE قرار دهید.
2) برای نگهداری تاریخ ویرایش نیز میتونین از TRIGGER استفاده کنین و مجدد مقدار اون فیلد را با GETDATE بروز رسانی کنین

ali_abbasi22145
شنبه 16 اردیبهشت 1385, 08:21 صبح
چطوری میشه گزارشی از رکورد های جدولم بر اساس تاریخ ایجاد یا ویرایش رکورد بوجود اورم؟

سلام

یک فیلد Ceartion_date به بانکت اضافه کن و در هنگام ایجاد رکورد شما زمان یا تاریخ انرا در Ceartion_dat ذخیره کن.

فیلد دیگری به نام modiffy_dateبه بانکت اضافه کن و در هنگام ویرایش رکورد شما زمان یا تاریخ انرا در modiffy_date ذخیره کن.

من اینکار را در بانکم انجام دادم و مشکلم حل شد به این سادگی!!!!