Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come restituire il valore della stringa dalla procedura memorizzata

Stai inserendo il tuo risultato nel RETURN valore invece che nel @r passato valore.

Da MSDN

Cambiare la procedura.

ALTER procedure S_Comp(@str1 varchar(20),@r varchar(100) out) as 

    declare @str2 varchar(100) 
    set @str2 ='welcome to sql server. Sql server is a product of Microsoft' 
    if(PATINDEX('%'[email protected] +'%',@str2)>0) 
        SELECT @r =  @str1+' present in the string' 
    else 
        SELECT @r = @str1+' not present'

Chiamare la procedura

  DECLARE @r VARCHAR(100)
  EXEC S_Comp 'Test', @r OUTPUT
  SELECT @r