PDA

View Full Version : یه راه حل برای کار با پایگاه داده



adasahar
یک شنبه 20 فروردین 1385, 18:07 عصر
یه راه حل برای کار با پایگاه داده

--------------------------------------------------------------------------------

سلام
من یه SQLConnection دارم که به صورت زیر توی یه پروسیجر به دو جدول کار می کنم

Dim cnc as new sqlconnection("....")
cnc.open
dim cmd as new sqlcommand(strsql,cnc)
...
...
...
...
cnc.close

cnc.open
dim cmd2 as new sqlcommand(strsql,cnc)
...
...
...
cnc.close


همونطور که می بینین در یک پروسیجر که قراره با دو جدول کار کنه دوبار Open,Close کردم
احتمال میدم این باعث سرعت لود بیش از حد پایین سایتم شده باشه
آیا راهی است که نیاز به بستن و باز کردن مجدد نباشه
منتظرم
ممنون از کمکتون

afsar
دوشنبه 21 فروردین 1385, 07:18 صبح
اگه نیاز به SqlCommand اول ندارید نیاز نیست که Connection رو ببندید.
می تونید بجای تعریف cmd2 از همون cmd که اول تعریف کردید استفاده کنید


Dim cnc as new sqlconnection("....")
cnc.open
dim cmd as new sqlcommand(strsql,cnc)
...
...
...
...
cmd as new sqlcommand(strsql,cnc)
...
...
...
cnc.close

white fox
دوشنبه 21 فروردین 1385, 08:14 صبح
البته نمیدونم چه کاری میخواید انجام بدید اما Transaction رو فراموش نکنید یه بار باز میشه دو تا کارو با هم انجام میده

nazaninam
دوشنبه 21 فروردین 1385, 22:17 عصر
در مورد کانکشن ها قبلا بحث شده مشکلی پیش نمیاد حتی اگر چندین بار بازو بسته شن با این حال میتونید از روند catch try finally برای جلوگیری از سر ریز شدن Pool استفاده کنید...
اگر از stored procedure استفاده می کنید میتونید 2 دستور sql رو باهم وارد کنید که در واقع یک بار فقط cmd شما اجرا خواهد شد