PDA

View Full Version : مفهوم Return در پروسیجرها



Developer Programmer
سه شنبه 06 فروردین 1387, 11:49 صبح
به دو پروسیجر زیر دقت کنید


CREATE PROCEDURE ut_MidPoint @LowerNumber int, @HigherNumber int
AS
BEGIN
DECLARE @Mid int
IF @LowerNumber > @HigherNumber
RAISERROR('You have entered your numbers the wrong way round',16,1)
SET @Mid = ((@HigherNumber - @LowerNumber) / 2) + @LowerNumber
SELECT @Mid
END


CREATE PROCEDURE checkstate @param varchar(11)
AS
IF (SELECT state FROM authors WHERE au_id = @param) = 'CA'
RETURN 1
ELSE
RETURN 2
چرا یه جا از Return و یه جا از Select استفاده میکنیم ؟!!

Amir_Safideh
سه شنبه 06 فروردین 1387, 12:02 عصر
تا اونجا که من اطلاع دارم و توی Help خود اس کیو ال توضیح داده شده دستورات بعد از Return دیگه اجرا نخواهد شد و زمانی که مقداری رو با Return برمیگردونی کدهای بعد از Return دیگر Excute نخواهند شد .
--------
موفق باشید.

AminSobati
سه شنبه 06 فروردین 1387, 13:05 عصر
در SP و Trigger وقتی اجرای برنامه به Return برخورد کنه، بلافاصله به Caller بازگشت میکنه. اگر Return وجود نداشته باشه، تا انتها اجرا خواهد شد