Stored Procedure یا روال ذخیره شده در SQL Server
در این درس به بررسی Stored Procedure ها میپردازیم ولی قبل از آن به یکی از سوالات پرتکرار که چگونگی وارد کردن دیتا ها از اکسل به SQL Server هست ، پاسخ میدهیم.
برای این کار روی دیتابیس مدنظر کلیک راست کنید ، Tasks را زده و Import Data را انتخاب میکنیم.
در اینجا دیتا سورس را روی Microsoft Excel قرار میدهیم. سپس فایل اکسل مد نظر را انتخاب میکنیم.
البته توجه کنید برای این فرآیند باید Access Database Engine را نصب روی سیستم داشته باشیم.
در قسمت Choose a Destination ، Destination را روی SQL Server Native Client 11.0 قرار داده و نام سرور را هم . یا همان Local قرار میدهیم. سپس Next را میزنیم.
در قسمت بعدی میتوانیم یک Preview از دیتا گرفته و همچنین میتوانیم تایپ ستون ها را نیز تغییر دهیم.
در سایر مراحل بعدی Next را زده و در نهایت گزینه Finish را انتخاب میکنیم.
Stored Procedure :
یک کوئری طولانی و پیچیده نوشته شده که چند نوع عملیات مانند حذف و بروزرسانی را باید انجام دهد و همچنین همانند یک تابع میتواند ورودی هم بپذیرد و یک خروجی به شما بدهد.
در اینجا میتوانیم این کوئری بزرگ و پیچیده را در قالب یک Stored Procedure ذخیره کنیم و هر موقع خواستیم در صورت نیاز به آن ورودی دهیم و آن را اجرا کنیم.
چگونگی نگارش کوئری ساخت SP همانند تصویر پایین است :
در اینجا یک SP به نام ProductCount ساخته ایم ، برایش ورودی تعریف کرده ایم و هنگامی که قصد ران کردن آن را داریم باید به آن ورودی بدهیم :
این SP برایمان تعداد کالا هایی که رنگشان قرمز هست را برمیگرداند.
با گذاشتن کاما ، میتوانید پارامتر های ورودی بیشتری تعریف کنید.
* به پارامتر ورودی میتوان به صورت پیش فرض مقدار داد تا اگر هنگام Exec کردن SP کاربر مقداری نداد ، روی مقدار پیش فرض SP اجرا شود.
برای پاک کردن یک SP از دستور DROP PROCEDURE Procedure_Name میتوان استفاده کرد.
نحوه نگارش comment در SQL Server :
در صورتی که تک خط بخواهید کامنت بنویسید از – میتوانید استفاده کنید.
اگر کامنت مدنظر بیش از یک خط شد ، از /* Comment */ میتوانید استفاده کنید.
تعداد کامنت ها تاثیری بر روی پرفورمنس کوئری کاربر ندارد.
اضافه کردن ستون جدید به تیبل جدید :
برای انجام این کار از کوئری زیر میتوانید بهره ببرید :
ALTER TABLE Table_name
ADD Column_name datatype ;