Rezasam1 (24-03-13)
سلام
نوروز مبارک برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
من واقعا به بن بست رسیدم و منبع فارسی اصلا پیدا نکردم درست و حسابی تو اینترنت.
Stored Procedure را با مثال و Syntax داشته باشم؟
همچنین Trigger با مثال و سینتکس مربوطه؟
لطف بفرمائید یاری کنید برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
Rezasam1 (24-03-13)
با سلام!
عید شما هم مبارک. برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
بنده تا حالا از این دو شی در پایگاه داده استفاده نکردم که بتونم خیلی دقیق راهنمایی تون کنم ولی اطلاعاتی رو که دارم در اختیارتون می ذارم؛ امیدوارم مفید باشه:
Stored Procedure (به اختصار SP) شبیه یک تابع هستش که می تونه مجموعه ای از دستورات SQL رو اجرا کنه. ما به جای اینکه بیاییم چند تا فرمان SQL رو در یک جدول پشت سر هم اجرا کنیم، یه SP تعریف می کنیم و اون فرمان ها رو در داخلش قرار می دیم و از به بعد فقط اون SP رو اجرا می کنیم؛ به عبارتی SP میشه نماینده ی اجرای اون فرمان ها (عین Function). مزیت دیگه اینه که Stored Procedure می تونه مثل تابع هم ورودی (آرگومان) داشته باشه و هم خروجی (مقدار بازگشتی) و داخلش میشه حلقه و دستورات شرطی هم تعریف کرد. درنتیجه میشه کارهای پیچیده روی پایگاه داده رو تنها با فراخوانی یه SP انجام داد که باعث کاهش حجم ترافیک درخواست ها هم میشه.
کلیدی ترین ویژگی SP سرعت اجرای بالا اون هستش. وقتی شما یک SQL Statement رو اجرا می کنید، پایگاه یه بار کامپایل میشه و بعد دستور اجرا میشه. درنتیجه اگر شما بخواهید n تا Statement رو اجرا کنید، n بار زمان باید صرف کامپایل پایگاه بشه و زمانی هم برای اجرای اون n تا دستور. در حالی اگر ما همین Statement ها رو وارد یه SP کنیم, پایگاه یک بار برای همیشه با اون دستورات Precompile میشه و با فرخوانی اون SP دیگه هیچ زمانی صرف کامپایل نمیشه و فقط زمان صرف اجرای دستورات میشه. به همین دلیله که بهش می گن Stored Procedure یعنی روند ذخیره شده.
اینم از Syntax ش:
http://www.c-sharpcorner.com/uploadf...ed-procedures/
تریگر همون SP هستش ولی فقط یه تفاوت بنیادی باهاش داره. SP با دستور کاربر اجرا میشه. کاربر روی یک دکمه کلیک می کنه و فرضا" یه جدول به روز میشه. ولی تریگر شامل یک یا چند تا SP هستش که به شکل خودکار با وقوع رویداد های خاصی اجرا میشه. ممکنه ما یه SP رو اجرا کنیم و به واسطه ی اون چند تا تریگر هم به طور ناخواسته اجرا بشه. از این حرف میشه نتیجه گرفت که در داخل تریگر این امکان هست که یک SP رو فرخوانی کرد ولی از داخل یک SP نمیشه یه تریگر رو اجرا کرد.
به عنوان مثال ما در یک برنامه ی مدیریت کارمندان یک SP برای امور مرخصی اداری ایجاد می کنیم. طبیعی هستش که باید به ازای مرخصی یه کسری حقوق هم در نظر بگیریم. پس میشه یه تریگر هم تعریف کرد که وقتی جدول مرخصی تغییر کرد (جز رویداد های خاص محسوب میشه) تو جدول حقوق هم کسری اعمال بشه. در نهایت زمانی که ما روی دکمه ی مرخصی کلیک کنیم, با اجرای یه SP مرخصی کارمند در جدول مربوطه درج میشه و به واسطه ی تریگر تعریف شده کسری حقوق هم به طور خودکار در جدول مخصوص به خودش اعمال میشه.
اینم از Syntax این یکی:
http://msdn.microsoft.com/en-us/libr...sql.80%29.aspx
برای اطلاعات بیش تر پیرامون این دو تا شی در MS SQL به پیوند زیر مراجعه کنید (برای سایر نرم افزار های پایگاه داده نظیر MySQL هم کافیه یه جست و جوی ساده کنید...سورس هاش فراوونه):
http://msdn.microsoft.com/en-us/libr...ql.105%29.aspx
موفق باشید
آرمین
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
life24 (24-03-13), M A H R A D (24-03-13), Rezasam1 (24-03-13), Shahryar (24-03-13)
1 کاربر در حال مشاهده این موضوع. (0 عضو و 1 میهمان)
Bookmarks