1متد چیست ؟

  2انواع متدها

3 معرفی Function ها

4 معرفی Procedure ها

5 ساختار Function

6 ساختار Procedure

 

 

متدها:

متدها یک یاچند ورودی ویک خروجی به ما تحویل می دهند.

خروجی متد می تواند بر دو نوع باشد به صورت زیر:

این یک Function (تابع) است،چون یک مقدارجمع بر می گرداند.

رشته می گیرد وطول آن را(مقدار) به ما برمی گرداند.

 

هیچ ورودی دریافت نمی کند ویک کاررابرای ما انجام می دهد(پاک کردن صفحه)بنابراین Procedure است.

 

Creating & Altering Stored Procedures

Stored Procedure overview

روال های ذخیره شده

Creating and Modifying stored procedures

ایجاد و تغییر روال های ذخیره شده

Designing Stored Procedures

طراحی روال های ذخیره شده

 

خاصیت روال های ذخیره شده :

Group T_SQL inside of a reusable component

دستورات SQLدراجزایی که قابلیت استفاده مجدد دارند یکبار تعریف میکنیم،چندباراستفاده میکنیم.

Stored on the server, reducting

Network traffic

رویServer قرارمیگیردوترافیک شبکه راکم میکند

Precompiled and optimized for performance

پیش Compileمی شود و بهینه سازی می شود وارتقا می دهد کارایی را.

Provides layer of abstraction

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

Provides layer of securing

 

ساختارStored Procedure:

روی + کنار DB مورد نظر کلیک ، روی + کنار Programmability ودرآنجا Procedure, Function  قراردارند.

مثال :

 

این دستور یک ID می گیرد واطلاعات شخصی که آن ID رادارد به ما نشان می دهد.

دستوربالا ازنظردیاگرامی به صورت زیراست :

نحوه استفاده از Stored procedure ساخته شده بالا:

برای استفاده کردن ازStored Procedure ساخته شده از دستور زیر استفاده می کنیم:

یک Stored Procedure برای درج که بعد از آن استفاده کنیم:

وازآن به بعد می توانیم بادستورزیر در جدول Students داده درج کنیم.

 

بعد با استفاده از دستور Select * FROM Students سطردرج شده را مشاهده کنید.

یک Stored Procedure برای حذف :

:SET NOCOUNT ON

با این دستوربا اجراکردن برای حذف دیگرپیغام (1row(a)offected)نمایش نمی دهد.

ازآن به بعد بااستفاده ازدستورمی توانیم سطرهای جدول را با دادن ID حذف کنیم:

EXECDROPUser32

•          بااستفاده ازدستورAlter می توانیمStored Procedure ساخته شده را تغییردهیم.

•          بااستفاده ازدستورزیرمی توانیم Stored Procedure ساخته شده راحذف کنیم،مثلا Add user رامی خواهیم حذف کنیم:

DROP Procedure Add User

یک Stored Procedure برای جمع مقادیر:

برای استفاده ازآن به صورت زیرمی نویسم:

EXEC AddNums 15,10

خروجی 25 است.

EXEC AddNums

خروجی 2است ازمقادیرپیش فرض استفاده می کند.

EXEC AddNums15

خروجی 16است به جایa @ ،15قرارمی گیرد و با مقدارپیش فرض 6@جمع می شود.

مثال:یک Stored Procedure که یک First Name ,Last Name بگیردورکوردهایی که آن First Name, Last Name درآن وجود دارد را به ما نشان دهد؟

برای استفاده از StoredProcedure ساخته شده بالا:

برای دیدن دستورساخت Stored Procedure ساخته شده روی Stored Procedure موردنظرکلیک راست       Scripts…    CREATE to     New… ، دستورساخت جدول ها را هم می توانیم باطی کردن مسیربالا روی جدول موردنظرببینیم.

دیدن طراحی جدول جایی کاربرد دارد که بخواهیم عین جدولی که برای مثال درپایگاه داده Saremed DB وجود دارد درپایگاه داده uni DB ایجادکنیم به صورت زیرواجرا می گیریم:

مثال:حالت آخرStored Procedure که دوعدد بگیرد و با استفاده از دستور Select خروجی رانمایش ندهد وخروجی رادریک متغیرتعریف کنید وآن رانشان دهید؟

با استفاده از دستور زیر می توانیم ازStored Procedure مثال قبل استفاده کنیم:

مثال : Stored Procedure بنویسید که بعد گرفتن ID ,First Name , Last Name مربوط به آن ID را به ما نشان دهد؟

برای استفاده از   Stored Procedureساخته شده بالا از دستور زیراستفاده می کنیم:

مثال : می خواهیم که اگر ID داده شده وجود نداشت خالی برنگرداند و به جای آن No Name بنویسید،بنابراین باید در Stored Procedure ساخته شده تغییری ایجاد کنیم:

به صورت زیرهم می توانیم استفاده کنیم:

ساختار تعریف توابع(Functions):

مثال :

با استفاده از دستورزیرمی توانید Functions(توابع) راحذف کنید:

DROP FUNCTIONMUL

با استفاده از دستورات زیرمی توانیم ازMUL ساخته شده صفحه قبل استفاده کنیم:

حالت اول :

حالت دوم :

حالت سوم :

مثال : یک Function بنویسید که براساس ID گرفته شده First Name, Last Name آن را برگرداند؟

برای استفاده از Function ساخته شده :

حالت اول :

حالت دوم :

حالت سوم :

حالت چهارم:

مثال :

•          Is Not Null برعکس دستوربالا Is Null است.

مثال : تابعی بنویسید که یک ایمیل بگیرد وبگوید آیا آدرس ایمیل   درست است یا نه؟

 

 

برای استفاده به صورت زیر عمل می کنیم:

حالت اول :

حالت دوم :