PDA

View Full Version : استفاده از اشیای data control یا ارسال دستی اطلاعات



mohinsoft
سه شنبه 06 فروردین 1387, 20:55 عصر
با سلام
چند وقتی هست که دنبال این موضوع هستم:
یک برنامه تحت lan رو در نظر بگیرید که با دلفی و sql پیاده شده،سابق برای درج،حذف و ویرایش اطلاعات از اشیای dbedit و دستورات delete,post,insert و.... استفاده میکردم ولی به پیشنهاد یکی از دوستان تمام روال فوق رو دستی(یعنی نوشتن مستقیم دستورات sql و استفاده از adoconnection1.execute)انجام میدم ایشون میگفتن اگه از واسط dbeditو دستورات insert استفاده کنی در این صورت اگر در شبکه چندین کاربر همزمان ورود اطلاعات داشته باشند تداخل درج اطلاعات بوجود میاد ،با توجه به این مطالب و این که مدیریت حالت دوم پیچیده تر هست،از دوستان باتجریه بخصوص آقای کشاورز و سایر دوستان خواهشمندم در این زمینه منو راهنمایی کنند یا اگه مطلب مفیدی به زبان فارسی در مورد واسط های مذکور و cursor location دارید بدید ممنون میشم
با تشکر

m-khorsandi
سه شنبه 06 فروردین 1387, 21:09 عصر
CursorType (http://barnamenevis.org/forum/showthread.php?t=19664)

mohinsoft
سه شنبه 06 فروردین 1387, 21:41 عصر
آقای خورسندی مطلب بسیار جالبی بود ولی بهتره قضیه رو با این دید نگاه کنیم:
کاربر 1 دستور insert رو ارسال میکنه (مهم مکان cursor location هست)
کاربر 2 دستور insert رو ارسال میکنه
کاربر 3 دستور insert رو ارسال میکنه
اشیای ado چطور بر روی cusor location مدیریت دارن؟مطلب جامع تری سراغ داین؟
اگه کاربر 3 ابتدا دستور post رو ارسال کنه بعد کاربر 2 postکنه و کاربر 1 cancel کنه ado چطور این مکانیزم رو مدیریت میکنه ؟آیا مکان insert کاربر 1 هنوز دستش هست؟یا بعد از این فرایند ما یک رکورد خالی(بدلیل عدم توانایی توی انجامcancel کاربر 1)در جدول مون داریم؟؟؟
اگه ممکنه نظر و تجربه و مکانیزم کارکرد خودتون رو هم بگید ممنون میشم

smaj2007
چهارشنبه 07 فروردین 1387, 12:43 عصر
اطلاعات را دریافت کن و بعد با sp اطلاعات را به سرور ارسال کن .
:تشویق::تشویق:

mohinsoft
چهارشنبه 07 فروردین 1387, 14:06 عصر
دوست عزیز مشکل در نحوه ارسال اطلاعات نیست ،مهم صحت مطالب گفته شده است؟
لطفا مطالب رو یه بار دیگه مرور کنین ممنون میشم
سایر دوستان مارو در جریان نظراتون بزارید
کجایید آقای کشاورززززززز.............
help me................

vcldeveloper
چهارشنبه 07 فروردین 1387, 19:00 عصر
ایشون میگفتن اگه از واسط dbeditو دستورات insert استفاده کنی در این صورت اگر در شبکه چندین کاربر همزمان ورود اطلاعات داشته باشند تداخل درج اطلاعات بوجود میاد
فرمایش دوستتون توجیه فنی نداره!

درباره خصوصیت LockType و مقادیر آن (ltOptimistic و ltPessimistic ,...) تحقیق کنید. در این زمینه توی همین سایت چندین بار بحث شده.