نمایش نتایج 1 تا 10 از 10

نام تاپیک: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

  1. #1

    ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    سلام.یک برنامه ای طراحی کردم که تعداد زیادی جدول داره (جداول به روش کد فرست طراحی شده است) که این جداول در فرم ها قابلیت اضافه ،حذف و ویرایش رو دارد.در هر جدول دو فیلد برای ثبت تاریخ تغییرات و فردی که این تغییرات را اعمال کرده است اضافه کردم.

    public string DateRegister { get; set; }
    public int UserRegisterID { get; set; }

    حال اگر یک رکورد را یوزر 1 از جدول A حذف کند دیگر نمیتوان فهمید که رکورد حذف شده رو چه کسی و در چه زمانی حذف کرده است.آیا راحلی واسه این مشکل وجود دارد؟

    برای ساخت یک گزارش کلی از فعالیت هایی که یک فرد انجام داده چه راحلی وجود دارد؟
    4f518860-bf29-4558-9d91-9563e1b2d88e.png
    اگر من این دو فیلدی که گفتم در هر جدول ساختم حذف کنم و یک جدول مشابه جدول بالا بسازم و کلیه تغییرات را در آن ثبت کنم آیا این کار منطقی می باشد؟
    آخرین ویرایش به وسیله tarak.4135 : پنج شنبه 11 آذر 1400 در 05:31 صبح

  2. #2
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    ایران
    پست
    372

    Lightbulb نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟


  3. #3

    Arrow نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    نقل قول نوشته شده توسط 336699 مشاهده تاپیک
    ممنون از پاسخ شما.
    من قبلا در مورد تریگرها مطالبی خوندم اما اینکه میشود این را در برنامه هم استفاده کرد اطلاعی ندارم.یعنی آیا میشود کد بنویسیم که بتوانیم اطلاعات تریگر را در برنامه بخوانیم و انها را در جدولی نمایش بدهیم؟
    در ضمن من از روش کدفرست در برنامه استفاده کردم.

  4. #4
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    ایران
    پست
    372

    نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    نقل قول نوشته شده توسط tarak.4135 مشاهده تاپیک
    ممنون از پاسخ شما.
    من قبلا در مورد تریگرها مطالبی خوندم اما اینکه میشود این را در برنامه هم استفاده کرد اطلاعی ندارم.یعنی آیا میشود کد بنویسیم که بتوانیم اطلاعات تریگر را در برنامه بخوانیم و انها را در جدولی نمایش بدهیم؟
    در ضمن من از روش کدفرست در برنامه استفاده کردم.
    شما فقط کافیه یک بار تریگر را به دیتابیس اضافه کنید و تمام.

    هر مرتبه که اطلاعات حذف و یا ویرایش شوند، تریگر اطلاعات حذف شده را در یک جدول دیگر ثبت میکند.

    https://github.com/NickStrupat/EntityFramework.Triggers

    https://entityframeworkcore.com/know...framework-core

    https://newbedev.com/add-database-tr...rst-migrations

  5. #5
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    ایران
    پست
    372

    نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    قبل از شروع راه درست را انتخاب کنید. اگر می خواهید کنترل بیشتری بر دستورات و عملیات SQL داشته باشید، ADO.NET یک چارچوب عالی برای کار با آن است. Entity Framework به اندازه کافی قدرتمند است که بتواند خدمات پایگاه داده را با خودکارسازی مکانیسم تولید کد پرس و جوهای SQL اولیه مدیریت کند. شما می توانید هر دو رویکرد را در یک پروژه واحد داشته باشید، یعنی Entity Framework برای عملیات CRUD و ADO.NET برای گزارش هدف و عملیات SQL داده انبوه.

  6. #6
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,057

    نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    چگونه میتونیم مشخصات کاربر (username/workstation , ...) رو به روتین های تریگر بفرستیم؟
    یا در روتین های تریگر چگونه میتونیم کاربر رو تشخیص بدیم؟

    چون در پرسش استارتر تاپیک مشخصا آمده که نیاز به این هست که بدونیم کدوم کاربر تغییرات رو اعمال کرده.

  7. #7
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    ایران
    پست
    372

    نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    نقل قول نوشته شده توسط mazoolagh مشاهده تاپیک
    چگونه میتونیم مشخصات کاربر (username/workstation , ...) رو به روتین های تریگر بفرستیم؟
    یا در روتین های تریگر چگونه میتونیم کاربر رو تشخیص بدیم؟

    چون در پرسش استارتر تاپیک مشخصا آمده که نیاز به این هست که بدونیم کدوم کاربر تغییرات رو اعمال کرده.
    https://www.mssqltips.com/sqlservert...erver-objects/

  8. #8
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,057

    نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    البته پرسشی رو که مطرح کردم بخاطر کامل شدن مبحث و در نظر گرفتن همه جوانب بود و جستجو رو خودم هم میتونستم انجام بدم!

    بنظر میاد استفاده از تریگر برای ساخت audit trail وقتی به مشخصات کاربر هم نیاز باشه (تقریبا همیشه نیاز هست) فقط وقتی جوابگوست که:
    1- از windows authentication استفاده شده باشه و اگر sql authentication هست برای هر کاربر برنامه یک یوزر متناظر هم در sql داشته باشیم
    2- برنامه دسکتاپ داشته باشیم و نه web app

    در غیر اینصورت اگر از تریگر استفاده کنیم هنوز هم به یک audit جداگانه (مشخصات کاربر و خلاصه نوع عملیات و ...) که باید توسط برنامه ساخته بشه نیاز هست.

  9. #9
    کاربر دائمی آواتار ebrahim.rayatparvar
    تاریخ عضویت
    آبان 1392
    محل زندگی
    https://www.youtube.com/c/zangclass
    پست
    714

    نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    سلام دوست عزیز . همینطوری که دوستان گفتن راه حل های مختلفی وجود داره که یکی از پر کاربرد های اون از خود SQL Server استفاده کردن هست و یه راه حل دیگه از فریم ورک های آماده در سی شارپ هست ولی برای برنامه های کوچک و متوسط میتونی از ویدیویی که بر حسب سوال شما درست کردم استفاده کنید که شاید به درد شما بخوره :

    یوتیوب

  10. #10

    نقل قول: ثبت کلیه فعالیت های یک فرد در یک برنامه دیتابیس تحت ویندوز چه راه کاری وجود دارد؟

    ممنون بابت لینک ویدیو.
    بسیار جالب و کاربردی بود

تاپیک های مشابه

  1. پاسخ: 1
    آخرین پست: شنبه 11 مهر 1394, 06:21 صبح
  2. سوال: استفاده مشترک ویندوز اپلیکیشن و وبسایت از یک دیتابیس
    نوشته شده توسط mbasirati در بخش ASP.NET Web Forms
    پاسخ: 4
    آخرین پست: چهارشنبه 29 مرداد 1393, 18:21 عصر
  3. وصل شدن به دیتابیس سایت از طریق ویندوز
    نوشته شده توسط amirdifraxe1 در بخش توسعه وب (Web Development)
    پاسخ: 3
    آخرین پست: پنج شنبه 28 شهریور 1392, 17:32 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •