2014-03-04 107 views
0

我想創建一個SQL Server函數,它不會返回任何東西,而只是基於某些輸入進行更新。有沒有返回任何東西的SQL Server函數類型?

看着documentation,似乎沒有這樣的功能?

我該如何實現這種行爲?

基本上,我需要一個函數類型,我可以在任何時候執行一些更新。

像:

exec UpdateData 'derp'

+6

使用存儲過程? –

+1

運行DML語句在SQL Server中根本不可能。爲什麼不用一個存儲過程呢? – DarkKnight

+2

這是從存儲過程中,但我需要執行.....該死,即時通訊是一個白癡。 – shenku

回答

4

一個stored procedure,是一個功能的「類型」,它通常用來跟你一樣的情況下,執行時修改某些日期。

您可以傳遞參數'derp',並創建一些SQL邏輯來更新記錄。最後,存儲過程將只是execute,並且不會返回任何內容(實際上,您可以返回信息,但它不是您問題的主題)。

2

創建存儲過程

例如,

Create Procedure usp_UpdateDate 

@Id int, 
@Value varchar(100) 

AS 

Update TableName 
Set Data= @Value 
Where Id = @Id 

然後你就可以

exec usp_UpdateDate 1,'value to update' 
相關問題