ilk olarak, SP kullanıp PRINT edilen değişkeni almak çok avantajlı bir yöntem değil. eğer SP'nin her zaman geriye tek değer dönderecekse, @RETURN_VALUE ya da output ile değer ataması ile parametrelerin değerini almak şeklinde olabilir ancak bu çok kolay değildir, hele yeni başlangıç seviyesinde 
bir başka nokta, her case için farklı veri seti gönderecek bir tek SP de belki db tarafında esneklik sağlar ama, kodu ve algoritmayı kısaltayım derken çok daha karmaşık hale getirebilir. hele hele her case için farklı sayıda alan geri dönderen veri seti ile çalışılıyorsa.
Kod:
CREATE PROCEDURE [dbo].[USER_LISTS2]
@GET_ID bigint
AS
BEGIN
DECLARE @SENT_TYPE bigint, @SENT_ID bigint
SET @SENT_TYPE = NULL
SET @SENT_ID = NULL
SELECT @SENT_TYPE = LIST_TYPE, @SENT_ID = LIST_ID FROM R_USERS_LIST WHERE USER_ID = @GET_ID AND LIST_EXTRA = 1 ORDER BY LIST_ID DESC
IF @SENT_TYPE = 100
BEGIN
SELECT @SENT_TYPE, @SENT_ID, USER_REALNAME,USER_NICK FROM VW_LIST_FRIENDS WHERE LIST_ID = @SENT_ID
END
ELSE IF (@SENT_TYPE = 102)
BEGIN
SELECT @SENT_TYPE, @SENT_ID, ARTIST_NAME, ARTIST_URL FROM VW_LIST_ARTISTS WHERE LIST_ID = @SENT_ID
END
ELSE
BEGIN
SELECT 'Uygun veri Bulunamadı', null
END
END
SP'nizi bu şekilde düzenleyip çalıştırın bakalım geriye ne değer dönderecek.