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

Possiamo chiamare un processo memorizzato da una funzione?

Sì.

Puoi farlo con un piccolo trucco che coinvolge openrowset ma non è consigliato in quanto aprirà una nuova connessione.

CREATE FUNCTION dbo.test ()
RETURNS  varchar(200)
AS
BEGIN
    RETURN (Select top 1 [Name] from 
OPENROWSET('SQLNCLI','Server=.\SQL2008;Trusted_Connection=yes;','SET NOCOUNT ON;SET FMTONLY OFF;EXEC MASTER..SP_HELP') 
)

END
GO

SELECT dbo.test()