یک SP در واقع یک برنامه درون پایگاه داده است که از مجموعه ای از دستورات تشکیل شده است و می تواند مقدار یا جدولی را به برنامه صداکننده انتقال دهد و در شکل کلی ذیل قابل پیاده سازی است:

نام Create    Proc[edure]             SP

[

] پیش فرض =[ نوع پارامتر 1    [AS]     پارامتر 1

] ] پیش فرض =[ نوع پارامتر 2   [AS]     پارامتر 2, [

]

      AS                    ]

--دستورات

 

همانطور که مشاهده می گردد هر SP با یک نام منحصر به فرد قابل تعریف است و درصورتیکه این برنامه تعدادی ورودی داشته باشد می بایستی در ابتدای SP تعیین گردد و اگر قرار است درصورت عدم ارائه پارامتر مقدار پیش فرض به برنامه انتقال یابد می توانید از مقدار پیش فرض هر پارامتر استفاده نمائید پس از کلمه کلید AS کلید دستورات قابل اجرا خواهند بود. 

 

  دستور ساده Select  قادر است مقداری را بازگرداند و به شکل ذیل بکار   می رود.

 ]...  عبارت 2 , [  عبارت 1      Select

بعنوان مثال خواهیم داشت :

Select    2*Len (´Hello´) + 1

 

 

که در این حالت مقداد عدد 11  به برنامه اصلی باز خواهد گشت.

 

  پس از طراحی هر SP  نیاز است که SP  طراحی شده اجرا گردد و به اشکال ذیل یک SP  اجرا خواهد شد.

(پارامترهای sp در صورت وجود)    نام SP

 

(پارامترهای  SP در صورت وجود)    نام SP     EXEC [ute]

برنامه ای بنویسید که یک رشته ساعت با ساختار hh:mm:ss   را به ثانیه تبدیل نماید.

 

Create   Proc    Time2Val

@T    Char(8)

AS

Declare   @h   TinyInt , @m  TinyInt , @s  TinyInt

Set    @h = Convert (TinyInt , SubString (@T,1,2))

Set    @m = Convert (TinyInt , SubString (@T,4,2))

Set    @s = Convert (TinyInt , SubString (@T,7,2))

Select    @h*3600 + @m*60 + @s

 

درمبحث به توابع تعریف شده توسط کاربر می پردازیم.

موفق باشید