PDA

View Full Version : سوال: استفاده ار يك كانكشن براي sql



amir_rtf
یک شنبه 16 بهمن 1390, 09:23 صبح
سلام دوستان :
براي ارتباط با sql يك كلاس نوشتم كه شامل چند تابع است ابتدا كلاس را new ميكنم و از توابع استفاده مي كنم به ازا هر ارتباط يك بار newميكنم
سئوال:
آيا راهي وجود دارد كه فقط يكبار موقع ورود به sql كانكت شم و موقع خروج ديسكانكت و تغيير فرم كانكشن من را قطع نكند

eroz70
یک شنبه 16 بهمن 1390, 09:31 صبح
سلام
شاید اگه new کلاستون رو به صورت عمومی برای کل فرم انجام بدین دیگه نیازی به دوباره انجام دادن این کار نیست.

amir_rtf
یک شنبه 16 بهمن 1390, 09:34 صبح
امتحانش ميكنم مي خوام بدونم اين روش كه دنبالش استاندارده

hamid.karimy
یک شنبه 16 بهمن 1390, 10:50 صبح
دوست عزیز کانکشن ها بعد از هر تراکنش باید بسته شوند و برای تراکنش جدید دوباره آنها را open کرد.حتی ado.net هم همین روش رو در پیش گرفته

mhsmity
یک شنبه 16 بهمن 1390, 13:20 عصر
تو تابع برای این کار بنویس یک باز کردن کانکشن و دیگری بستن کانکشن

نکته اصلی این جا هستش
این دو تابع را به صورت Static تعریف کن

می دونم که می دونی توابع استاتیک جه کارایی دارند

amin.bdn
یک شنبه 16 بهمن 1390, 15:28 عصر
بستن و باز کردن کانکشن به دیتابیس با توجه به اینکه وضعیت این کانکش نگهداری می شود قابل مقایسه است و در صورت تست هم می تونی اختلاف زمان را بدست بیاری! ولی به نظر من این اتفاق تو سیستم هایی با مقیاس پایین زیاد دردسر ساز نیست، و سیستم هایی هم که مقیاس بالایی دارند معمولاً اصلاً نبایستی در برنامه کانکشنی تعریف و یا باز بسته بشود زیرا روش صحیح آن سرویس گرا بودن آن است، در نتیجه این وظیفه application server خواهد بود که poolیی از کانکشن های ایجاد و آنها مدیریت می کند.

من در اکثر مثال های مراجع دیدم که دقیقاً برای هر درخواست از بانک (مثلاً اجرا یک پروسجر) یک کانکشن نمونه سازی کرده.

hamid.karimy
یک شنبه 16 بهمن 1390, 15:39 عصر
درست است که می توان برای نگاه داشتن مقدار کانکشن استرینگ و ... از متغیر های استاتیک استفاده کرد اما باز نگاه داشتن کانکشن و یا استفاده از توابع استاتیک اصلا کار صحیحی نیست.به فروم sql server microsoft مراجعه کنید.ضمن اینکه معمولا چون کانکشن استرینگ را نیز داخل فایل config قرار می دهیم احتیاجی به استاتیک نگاه داشتن آن نداریم

majidrezaei2007
دوشنبه 17 بهمن 1390, 00:24 صبح
اگه مشکل فقط باز کردن و بستنشه که با استفاده از یک کانکشن ایستا یا یک اشاره گر تو هر فرم به کاننکشن اصلی ، مشکل حل میشه . اما همونطور که دوستان گفتند ممکنه تو بعضی شرایط خاص ، نتیجه خوبی نده چون بعد از هر تراکنش بهتره که بسته شن .