تبليغات X
Stored Procedure چیست ؟

HOW 2 LEARN ASP.NET
نویسنده : delshad
تاریخ  : ۱۳۸۷/۵/۱۲
امتیاز :
بازدید : 5661
موضوع : Stored Procedure چیست ؟
توضیحات : در این مقاله با Stored Procedure یا رویه های ذخیره شده آشنا و نحوه ساخت و استفاده آن در پروژه را آموزش خواهم داد .
  دانلود مقاله   نسخه قابل چاپ

Stored Procedure   چیست ؟


Stored Procedure
یا Sp یا به زبان فارسی " رویه های ذخیره شده "  اشیایی اجرا پذیر در بانک اطلاعاتی   SQL Server هستند که شامل یک یا چندین دستور SQL می شود ، این رویه ها میتوانند پارامتر های ورودی و خروجی داشته باشند .
همچنین میتوان داخل این رویه ها به زبان SQL برنامه نویسی کرد .
مهم ترین کاربر این رویه ها ذخیره کردن دستورات Select , Insert , Update , Delete هست یا ترکیبی از اینها .
نحوه ساخت این رویه ها به صورت زیر می باشد :

  • وارد بانک اطلاعاتی SQL Server شده ، پس از باز کردن بانک مورد نظر در قسمت Programmability وارد بخش Stored Procedure شوید .
  • بر روی Stored Procedure  کلیک راست کرده و New Stored Procedure را انتخاب نمایید .
  • احتمالا کد های پیشفرضی را در این صفحه مشاهده می کنید ، همه این کد هارا پا کرده و به صورت زیر کد نویسی کنید :

 

Create Procedure YourProcedureName(@FirstParamete DataType,@SecondParameter DataType,...)

As

Begin

SQLStatement

End 

کد فوق شکل کلی ساخت رویه های ذخیره شده می باشد .

به جای YourProcedureName یک نام برای برای رویه انتخاب کنید . سعی کنید نامی که انتخاب می نمایید مفهوم رویه شما را برساند مثلا برای درج یک رکورد جدید در جدول Members من نام AddNewMember را انتخاب می کنم و یا برای دریافت تمام رکورد های این جدول نام GetAllMembers نام با مفهومی است .

در پرانتز مقابل نام رویه پارامتر های رویه به همراه نوع پارامتر تعیین میشود ، اگر تعداد پارامتر ها بیشتر از یکی بود با ویرگول آنها را جدا می کنیم .

به جای SQLStatement  دستورات  SQl  را که بین Begin   و End  نوشته می شوند تایپ کنید .

دستوراتی مانند Select , Insert , Update , Delete   و....

به عنوان مثال Sp زیر اطلاعات کاربر را با دریافت پارامتر نام کاربری (@ID)  از جدول TBL_Members دریافت می کند : 

create procedure GetMemberbyID(@ID nvarchar(100))

as

begin


select * from TBL_Members where ID=@ID


end

سپس بر روی دکمه Execute کلیک کرده تا رویه شما ساخته و ذخیره گردد .

برخی از قابلیت های رویه های ذخیره شده یا Stored Procedure  عبارت است از :

 

  1. Precompiled بودن آنها به این معنی که به زبان ماشین بسیار نزدیک شده و به طور کامل از اول ترجمه نمیشود ، این امر باعث افزایش سرعت بارگزاری می گردد .
  2. قابلیت ذخیره داشته و میتوان از یک رویه چندین بار در کد نویسی استفاده کرد .
  3. دارای ویرایشگر Query می باشد (میتوانید به سادگی یک Query حرفه ای ایجاد کنید)
  4. دارای Syntax Parser هست و از خطاهای SQL جلوگیری می کند .
  5. دارای امنیت بالایی است و از هک شدن سایت شما توسط SQL Injection در بسیاری موارد جلوگیری می کند .
  6. قابلیت درج چندین دستور SQL را پشت سرهم داراست .
  7. قابلیت ارسال ورودی و خروجی دارد .
  8. قابلیت برنامه نویسی ( شرط ، حلقه و...) به زبان TransactSQL دارد .

و.....

حال که با قابلیت ها ونحوه ساخت Stored Procedure آشنا شدید بد نیست که به نحوه استفاده از این ابزار جالب در Asp.NET بپردازیم .

استفاده از این ابزار بسیار ساده هست .  اگر از SQL Datasource  یا ObjectDatasource استفاده می کنید یک ویزارد برای ساخت و استفاده از Stored Procedure ها قرار داده شده که به راحتی آن را مدیریت کنید .

اگر از کد نویسی برای کار با بانک های اطلاعاتی استفاده می کنید کافیه بعد از تعریف SQLCommand به جای دستورات SQL نام SP را وارد نموده و بعد از آن کد زیر را اضافه نمایید :


Cmd.CommandType = CommandType.StoredProcedure;
 

این کد به برنامه می گوید که دستورات نوشته شده از نوع Stored Procedure هستند و نیازی به ترجمه آن ها نیست .

در نهایت کد های اتصال ما به شکل زیر خواهد بود :

SqlConnection Con=new SqlConnection("YourConnectionString");

SqlCommand Cmd = new SqlCommand("YourProcedureName", Con);

 

Cmd.CommandType = CommandType.StoredProcedure;

 

Con.Open();

 

// Some Code...

 

Con.Close();


امیدوارم این مقاله برای شما مفید باشد .


 

 

 
امتیاز بدهید :

نویسنده : الهام farhani_elham@yahoo.com ۱۳۸۸ بيست و ششم دي
لطفا توضیحات جامع تری در مورد sp هایی که مقدار برگشتی دارند بد هید .
نویسنده : saeid soltani_ce@yahoo.com ۱۳۸۸ پانزدهم دي
Mer30,,,jaleb boood,, AMMA nagofti vhjori mishe parametr haro to C# be Stor procedure ersal kard;;;?????
نویسنده : sahand ghasemi1024@yahoo.com ۱۳۸۸ سيزدهم دي
ممنون بسیار عالی بود
نویسنده : nazi nazi2ma@yahoo.com ۱۳۸۸ يازدهم دي
khaili tanx............
نویسنده : سارا sara_turbo2002@yahoo.com ۱۳۸۸ چهاردهم مهر
سلام من میخواستم بدونم فرایندتولید پروژه مثلا در سطج دانشگاه چه مراحلی رو باید طی کند ازتون ممنون میشم کمکم کنید من ترم آخر نرم افزار هستم بشتر در آنالیز مشکل دام ممنون
نویسنده : مریم m_m_1363@yahoo.com ۱۳۸۸ اول مهر
سلام عالی بود . خیلی گمگم کرد ممنون
نویسنده : الهام ۱۳۸۸ سوم تير
خیلی کمکم کرد.مامنونم و امیدوارم موفق باشید.
نویسنده : واحدی vahedif61724@yahoo.com ۱۳۸۸ هشتم ارديبهشت
عالی بود خیلی روان نوشته بودید دستتون درد نکنه
نویسنده : hassan ۱۳۸۸ پنجم ارديبهشت
خیلی ممنون
نویسنده : علی am_maram@yahoo.com ۱۳۸۸ دهم فروردين
مقاله خوبیه بطور مختصر و مفیدی در مورد sp ها توضیح دادی , گیج کننده نیز نیست
نویسنده : sa saran_saz@yahoo.com ۱۳۸۷ بيست و سوم آذر

با سلام

بابت مقاله از شما ممنونم.

ببخشید من به دنبال مطلبی در مورد استفاده از stored procedureها در محیط دات نت (asp.net)هستم .لطف کنید در صورت امکان به من کمک کنید.

نویسنده : اسپیرال spiral_potin@yahoo.com ۱۳۸۷ دوازدهم آذر

ممنون خیلی مطب خوب و مناسبی بود.

نویسنده : ali najafzade@gmail.com ۱۳۸۷ دوازدهم آبان

سلام

مطلب جالبی بود . با اجازتون در مقالم ازش استفاده کردم.

به وب سایت من هم سری بزنین. www.bitasoft.ir

 

نویسنده : david ۱۳۸۷ هجدهم مهر

سلام

مفيد بود، ممنون

 

نویسنده : مينا mina31062@yahoo.com ۱۳۸۷ بيست و پنجم شهريور

سلام خيلي خوب و مفيد بود

 ممنونم

شاد باشي

نویسنده : محسن طباطبایی sece_shance@yahoo.com ۱۳۸۷ دوازدهم مرداد

سلام
مقاله مفید و پر کارایی بود
موفق و پیروز باشی


 
نظر بدهید :
لطفا سوالات فنی خود را در تالار گفتگو www.forum.how2learnasp.net مطرح نمایید
نام :  
ایمیل :    
نظرات :
 
Xml rss feed

 

Valid CSS! Atom rss feed
Ali Delshad Official Site