2015-05-02 107 views
1

我運行這個存儲過程,我需要它返回的存儲過程幫助需要

Success 

Failed 

一個字符串值,但接下來的過程失去了一些東西,不知道是什麼?

ALTER PROCEDURE [dbo].[sp_Log_Audit] 
(
    @username varchar(254) = NULL, 
    @password varchar(254) = NULL, 
    @User_ID int = NULL, 
    @Method varchar(10) = NULL, 
    @Result varchar(10) = Failed 
) 
AS 
    SET NOCOUNT ON; 

    INSERT INTO dbo.[A_Logins]([Username], [Password], [User_ID], [Method], [Result]) 
    VALUES(@userName, @Password, @User_ID, @Method, @Result) 

    SET NOCOUNT OFF; 
    RETURN 

它應該返回@Result,因爲這將是具有SuccessFailed消息

+0

'圍繞失敗在ALTER PROCEDURE語句 – namezero

+1

旁註爲**的SQL Server **:你應該** **不使用'sp_'前綴爲您的存儲過程。微軟已經保留了這個前綴以供自己使用(參見*命名存儲過程*)](http://msdn.microsoft.com/en-us/library/ms190669%28v=sql.105%29.aspx),以及你將來有可能冒着名字衝突的風險。 [這對你的存儲過程性能也是不利的](http://www.sqlperformance.com/2012/10/t-sql-queries/sp_prefix)。最好只是簡單地避免使用'sp_'並將其他內容用作前綴 - 或者根本沒有前綴! –

+0

你正在編寫** SQL **(結構化查詢語言),並且真正意味着Microsoft ** SQL Server **(實際產品)是由這個嗎?如果是:請添加'sql-server'標籤來清除。如果不是:**數據庫系統是用來做什麼的? –

回答

1

我想你還沒有返回任何值,你可以試試這個在您寫的回報的地方嗎?

 SELECT @Result As ReturnVal