PDA

View Full Version : سوال: ایجاد یک Connection برای همه یا Connection به تعداد ؟



Modifier
شنبه 14 اسفند 1389, 14:50 عصر
سلام
در پیاده سازی یک نرم افزار کدام مورد بهتر است ؟
1-ایجاد یک Connection به DB در ابتدای کار و استفاده برای همه موارد ؟
2-برای هر عمل ایجاد Connection به DB و هنگامی که عمل مورد نظر تمام شد قطع ارتباط ؟


نکته :
توی برنامه نویسی وب روش دوم انجام میشه.

pezhvakco
شنبه 14 اسفند 1389, 19:09 عصر
سلام :
اگه منظور شما بکار بردن ADOConnection در برنامه و تنظیم اون برای پایگاه داده و اتصال دادن ابزار ارتباطی دیگر مانند ADODataSet به پایگاه داده از مسیر همون ADOConnection است، این روش به این معنا نیست که شما باید همه جدول ها را در ابتدای کار فعال (Active) نمایید .
شما می تونی برای مدیریت همه پایگاه داده یک ADOConnection داشته باشی و متناسب با نیاز خودت ابزار ارتباطی دیگر مانند ADODataSet را فعال یا غیر فعال نمایید . البته فعال بودن ارتباط ها به نظر من تاثیری در کارایی برنامه نداره چون سخت افزارهای کنونی پاسخگوی نگه داری(کش کردن) داده های جدول ها هستند .

اگه استادان راهنمایی بیش تری داشته باشند، بهتره ...

Felony
شنبه 14 اسفند 1389, 22:30 عصر
بستگی داره قصدت از این کار چی باشه ، به عنوان مثال وقتی از بانک Access استفاده میکنی و تو برنامت هم با ADO چند تا Connection باز کردی تفاوتی نمیکنه چون همه Connection ها دارن از Main Thread برنامه استفاده میکنن و از لحاظ کش شدن اطلاعات هم تائثیری نداره ، شما با یک سیستم عامل همه رو به رو هستید نه یک احمق! وقتی داده توسط برنامه واحد شما یک بار Cache شد دیگه با Connection جدید داده دوباره همون داده Cache نمیشه !

این کار زمانی هست که مثلا تو برنامه چند تا Thread داشته باشی و تو هر Thread شئ COM رو برای ADO پیاده کنی ( ADO بر پایه COM هست ) و هر ترد به صورت جداگانه روی داده ها کار کنه .

تنها مزیتی که اون کار شما داره این هست که بعدها که برنامه رو باز کردی فهمش برات ساده تر هست چون برای هر کار Connection جدا داری و کدهات کمتره .