آموزش نوشتن Stored Procedore در sql Server :
در این مقاله می خواهم در مورد نوشتن procedure stored صحبت کنم شما با استفاده از این کوئری می توانید به اطالعات جدول تان اضافه ویرایش و یا حذف داشته باشید
روش های ذخیره سازی اطالعات با استفاده از روش procedure stored به این صورت است که ابتدا شما باید آن را با کوئری proc Create ایجاد نمایید.
بهتر است زمانی از procedure stored استفاده نمایید که شما می خواهید یک سری دستورات متوالی و با اطالعات زیاد را بر روی جدول خودتان انجام بدهید با استفاده از پروسیجر زمان شما کاهش پیدا می کند و هم اینکه injection sql انجام نمی شود یعنی هکری نمی تواند از طریق سایتتون اطالعات شما را با دستورات کوئری بردارد.
فرق بین پروسیجر وتابع در چیست ؟
پروسیجر شاید یک مقدار را برنگرداند ولی تابع یک مقدار را برمیگرداند
ما می توانیم در کوئری هایمان از یک تابع در پروسیجر خودمان استفاده کنیم ولی نمی توانیم از یک پروسیجر در تابع استفاده کنیم
حال در مثال زیر یک جدول را ایجاد می نماییم :
[php] 
create table emp(empId int, empName varchar(15), empAge int ) [/php]
اطالعات زیر را داخل جدول اضافه نمایید
[php] 
insert into emp
select 1,’deepak’,21 union all
select 2,’Arora’,21 union all
select 3,’Vandna’,22 [/php]
برای نمایشی خروجی از کد زیر استفاده نمایید
[php] select * from emp[/php]
یک جدول دیگر هم ایجاد کنید به صورت زیر:
[php] create table emp1(empId int,empAdd varchar(35)) [/php]
داده ها به صورت زیر باشد
[php] 
 insert into emp1
 select 1,’delhi’union all
select 2,’banglore’union all
 select 3,’usa’ [/php]
خروجی به صورت زیر باشد
[php] select * from emp1 [/php]
انواع پروسیجر عبارت اند از:
[php] 1. System Stored Procedure
۲٫ User Defined Stored Procedure [/php]
که می خواهیم االن مورد ۲ را توضیح دهیم :
این نوع پروسیجر مقدار را قبول نمی کنند
[php] create proc usp_select
as [/php]
[php] select * from emp [/php]
برای نمایش خروجی:
[php] exec usp_select [/php]
مورد اول پروسیجر ها پارامترها را قبول می کند و برایش مهم هست که نوع داده از جدول با نوع داده جدول
بعدی یکسان باشد
[php]
create proc usp_insert(@id int,@name varchar(15),@age int)
as
insert into emp values(@id,@name,@age) [/php]
خروجی به صورت زیر می باشد:
[php] exec usp_insert 4,’Ankit’,19
exec usp_select [/php]
حاال برای نوشتن آپدیت اطالعات در زمان ویرایش اطالعات باید از پروسیجر زیر استفاده کنید
[php]
create proc usp_update(@id int,@name varchar(15),@age int)
as
update emp set empName=@name,empAge=@age where empId=@id [/php]
برای نمایش خروجی
[php] exec usp_update 4,’Mohan’,20
exec usp_select [/php]
و در آخر برای حذف کردن اطالعات از جدول
[php] create proc usp_delete(@id int)
as
delete from emp where empId=@id. [/php]
نمایش خروجی:
[php][/php]
exec usp_delete 4
exec usp_select [/php
]