PDA

View Full Version : طرز صحیح کد نویسی برای اتصال و استفاده از با نکهای اطلاعاتی چگونه است؟



SadeGh_SR
چهارشنبه 23 بهمن 1387, 13:45 عصر
با سلام
طرز صحیح کد نویسی برای اتصال و استفاده از با نکهای اطلاعاتی چگونه است؟وآیا استفاده از select های زیاد باعث کندی برنامه می شود؟
فقط لطفا نفرمایید جستجو کن ،بله چند نمونه بود اما بنده از انها زیاد سر در نیاوردم چون تازه کارم
اگر می شود یک مثال بزنید.

متشکرم

ali_mnkt
چهارشنبه 23 بهمن 1387, 17:18 عصر
اگه از sql server استفاده می کنی سعی کن برای select از stor procedure استفاده کنی

باعث می شه سرعت بالا بره .

حامد مصافی
چهارشنبه 23 بهمن 1387, 17:24 عصر
فقط لطفا نفرمایید جستجو کن ،بله چند نمونه بود اما بنده از انها زیاد سر در نیاوردم چون تازه کارم
شما یک کتاب بخونید مشکلاتتون حل خواهد شد. فعلاً نیازی به حستجو ندارید.



اگه از sql server استفاده می کنی سعی کن برای select از stor procedure استفاده کنی

باعث می شه سرعت بالا بره .
جالبه، برای select ? چرا ؟

SadeGh_SR
چهارشنبه 23 بهمن 1387, 20:19 عصر
اگه از sql server استفاده می کنی سعی کن برای select از stor procedure استفاده کنی

باعث می شه سرعت بالا بره .

یعنی stor procedure بهتر از کد نویسی است؟


شما یک کتاب بخونید مشکلاتتون حل خواهد شد. فعلاً نیازی به حستجو ندارید.

جالبه، برای select ? چرا ؟

پس لطفا یک کتاب خوب معرفی نمایید.

با تشکر

shervin_agh67
چهارشنبه 23 بهمن 1387, 21:11 عصر
stor procedure باعث بالا رفتن امنیت برنامه و کاهش خطاهای زمان اجرا میشه . ولی می تونید از پارامتر هم استفاده کنید که از stor procedure راحتتره ولی زیاد امن نیست . نسبت به روش SQL Injection زیاد مقاوم نیست . ولی از روش عادی (ایجاد رشته های کوئری که توی کتابها رایجه ) خیلی بهتره .

ali_mnkt
چهارشنبه 23 بهمن 1387, 23:49 عصر
جالبه، برای select ? چرا ؟

علت این که می گم باعث بالا رفتن سرعت می شه به این خاطره که یه جا خوندم که

وقتی بخوای دستوری مثل select رو در sqlcommand بنویسی و از طریق vs اجزا کنی باعث

می شه کل اطلاعات جدول مورد نظر به client منتقل بشه و بعد دستور select از میان آن جدول

داده های خواسته شده را انتخاب می کنه ولی اگه از store procedure استفاده بشه دستور

select در server اجرا شده و فقط جواب select منتقل می شود که باعث می شود حجم داده

کمتری منتقل شود . ( البته منظور من هم یه برنامه که تحت شبکه اجرا می شه بود)

حامد مصافی
پنج شنبه 24 بهمن 1387, 10:02 صبح
stor procedure باعث بالا رفتن امنیت برنامه و کاهش خطاهای زمان اجرا میشه . ولی می تونید از پارامتر هم استفاده کنید که از stor procedure راحتتره ولی زیاد امن نیست . نسبت به روش SQL Injection زیاد مقاوم نیست . ولی از روش عادی (ایجاد رشته های کوئری که توی کتابها رایجه ) خیلی بهتره .
شما در نهایت به پارامتر ها نیاز خواهید داشت. چون درخواست های SQL همیشه یکسان نیستند. پارامتر ها در مواجه با SQL Injection مقاوم هستند چون صحت رشته ای و همچنین safe بودن پارامتر های ارسالی برای دستور SQL توسط DBMS بررسی میشه.





علت این که می گم باعث بالا رفتن سرعت می شه به این خاطره که یه جا خوندم که

وقتی بخوای دستوری مثل select رو در sqlcommand بنویسی و از طریق vs اجزا کنی باعث

می شه کل اطلاعات جدول مورد نظر به client منتقل بشه و بعد دستور select از میان آن جدول

داده های خواسته شده را انتخاب می کنه ولی اگه از store procedure استفاده بشه دستور

select در server اجرا شده و فقط جواب select منتقل می شود که باعث می شود حجم داده

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




پس لطفا یک کتاب خوب معرفی نمایید.

با تشکر
برنامه نویسی بانک های اطلاعاتی در .net
انتشارات دیباگران تهران (اگر اشتباه نکنم)
مترجم رامین مولانا پور