假設我有一個正常的SQL過程,它有幾個參數。在SQL函數中設置變量/ probs
在調試這將是很好,如果我能分配一些值,這些參數,這樣我就可以突出PROC的身體並執行它(而不是手動替換值的變量。
有?沒有辦法做到這一點我想:
@Date1 datetime,
@Date2 datetime
SET @Date1 = '2012-03-23'
,但它不喜歡呢??
假設我有一個正常的SQL過程,它有幾個參數。在SQL函數中設置變量/ probs
在調試這將是很好,如果我能分配一些值,這些參數,這樣我就可以突出PROC的身體並執行它(而不是手動替換值的變量。
有?沒有辦法做到這一點我想:
@Date1 datetime,
@Date2 datetime
SET @Date1 = '2012-03-23'
,但它不喜歡呢??
嘗試 DECLARE @Date1 datetime
SET @Date1 = '2012-03-23'
看起來你失蹤的聲明語句。如果它不喜歡'2012-03-23'部分,則可能需要投射。
把「聲明」字在前面@日期1
如果你要做到這一點,我建議你考慮增加一個@Debug參數,你的程序:
create procedure dbo.SomeProc @p1 int, @p2 int, @Debug bit = 0x0
as
set nocount on
begin
if @Debug = 0x1 -- set test values only if debugging
begin
print 'Start debugging'
set @p1 = 1
set @p2 = 2
end
/* your code continues here... */
end
然後,當你想測試你的代碼,只需要執行的步驟,使用@Debug = 0x1
執行調試代碼。
也許你想聲明@ @ Debug'參數作爲一個可選參數 – Sung
@Sung它是可選的:它有一個默認值0x0 – Pondlife
oops。你是對的池塘生活。我沒有看到0x0 – Sung