PDA

View Full Version : دلفی و sqlserver



msaeed
چهارشنبه 30 آذر 1384, 17:49 عصر
سلام به دوستان عزیز
من تمام تاپیکهای مربوط به شبکه را خوندم.
راهی که من استفاده میکنم ارتباط از طریق ado and sqlserver است
اما یه سئوال دارم و اون اینکه زمانی که دو نفر همزمان بخواهند یک رکورد را ویرایش کنند تکلیف چیست ؟
یا اینکه یه نفر داره ویرایش میکنه و دیگری داره گزارش میگیره ایا نباید گزارش اون refresh بشه؟
خیلیها از cursor استفاده کردند اما من اطلاعی در این زمینه ندارم.
کسی میتونه به من کمک کنه؟
با تشکر

mzjahromi
چهارشنبه 30 آذر 1384, 18:13 عصر
در مورد استفاده همزمان و .. از خواص isolation level , Mode در AdoConnection استفاده کنید.
در مورد مشاهده هم تا اونجائی که من خبر دارم Query وقتی اجرا شد دیگه محتوای اون عوض نمیشه مگر اینکه دوباره اجرا بشه(Refresh)

vcldeveloper
پنج شنبه 01 دی 1384, 03:10 صبح
در مورد استفاده همزمان و .. از خواص isolation level , Mode در AdoConnection استفاده کنید
خصوصیت IsolationLevel در AdoConnection به Transaction ها مربوط میشه و مشخص میکنه که در هنگام اجرای یک Transaction سایر Transaction ها چطور می تونند به داده های مربوطه دسترسی داشته باشند.
خصوصیت Mode هم سطح دسترسی کاربر به یک Database خاص را مشخص میکنه.


اما یه سئوال دارم و اون اینکه زمانی که دو نفر همزمان بخواهند یک رکورد را ویرایش کنند تکلیف چیست ؟
اگه در DataSet شما خاصیت LockType بر روی ltOptimistic تنظیم شده باشه، کاربران می تونند بطور همزمان یک رکورد خاص را ویرایش کنند، اما از نتیجه تغییرات سایر کاربران بر روی آن رکورد اطلاعی ندارند. اگه این خاصیت بر روی ltPesimistic تنظیم شده باشه، اولین کاربری که رکوردی را ویرایش می کند، آن رکورد را قفل می کند و سایر کاربران تا پایان عمل ویرایش نمی توانند آن رکورد را ویرایش کنند.
از طرف دیگه، در صورتی که CursorLocation بر روی clUseClient و CursorType بر روی ctStatic تنظیم بشند، هر کاربر یک نسخه از داده های جدول را بصورت محلی Cache خواهد کرد و هرگونه تغییر بر روی داده ها قبل از عمل Post بر روی این Cache اعمال میشه.
شما می تونید برای اطلاعات بیشتر در این مورد به راهنمای دلفی برای خصوصیات CursorType, CursorLocation و LockType از AdoDataSet مراجعه کنید. در ADO SDK هم در مورد هر یک از حالات ممکن برای این خصوصیات توضیح داده شده.

msaeed
پنج شنبه 01 دی 1384, 09:42 صبح
از راهنمایی شما ممنونم
اگه به اشکالی برخورد کردم دوباره مزاحم میشم