View Full Version : طراحی شبیه به لاگ فایل
icegirl_f2r
جمعه 01 خرداد 1394, 22:14 عصر
سلام دوستان.
از شما راهنمایی میخوام لطفا کمک کنید
من میخوام فایل لاگ را شبیه سازی کنم تو اپلیکیشن مثل سی شارپ
مثلا چندکاربر همزمان از داده های دیتا بیس استفاده کنند اما اگر اطلاعات آنها قبل از ذخیره در دیتا بیس توسط دیگری تغییر کرده بود پس اطلاعات ان بی اعتبار اعلام شود.
به نظر شما چجور پیاده سازی شود؟
مچکرم
pezhvakco
شنبه 02 خرداد 1394, 10:38 صبح
اگر اطلاعات آنها قبل از ذخیره در دیتا بیس توسط دیگری تغییر کرده بود
=>
پس اطلاعات ان بی اعتبار اعلام شود.
میشه یکم بیت تر توضیح بنویسید .
لاگ فایل برای نگهداری تراکنش های انجام شده در پایگاه داده داده توسط هر کاربر است .
مهدی نان شکری
شنبه 02 خرداد 1394, 12:30 عصر
با سلام
برای این کار معمولا از فیلد Timestamp استفاده می شود.
این فیلد که فضایی معادل 8 بایت اشغال می کند یک عدد باینری می باشد که به صورت اتوماتیک تولید می گردد. از این فیلد برای ورژن رکوردها در دیتابیس استفاده می شود.
شما در هر جدول تنها می توانید یک فیلد از نوع Timestamp داشته باشید و مقدار آن فیلد در زمان Insert و Update به صورت اتوماتیک تغییر می کند. و معمولا Unique بودن آن در دیتابیس گارانتی شده است.
پس با توجه به توضیحات، فیلد Timestamp واکشی شده را با مقدار موجود در پایگاه داده مقایسه کنید و مغایر بودن آن به معنی بی اعتبار بودن رکورد در حال ویرایش می باشد.
به عبارت دیگر Timestamp یا rowversion برای مدیریت مشکل lost update استفاده می شود.
امیدوارم منظورتان را متوجه شده باشم و توضیحاتم مفید باشد.
موفق باشید
icegirl_f2r
شنبه 09 خرداد 1394, 21:23 عصر
ممنون که راهنماییم کردین.
یه سوال اینکه میگین از فیلد Timestamp استفاده کنم یعنی سیستم به ازای هر فراخوانی از جدول داخل این فیلد یک عدد رندم میزاره که من با واکشی اون مقدار میتونم بعد از ویرایش اطلاعاتم اگه اون فیلد با مقدارش تو جدول یکی بود پس ویرایش انجام میشه؟
منطورتون را متوجه نشدم. فک کنم دارم اشتباه میگم:ناراحت:
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.