转换存储过程调用?

Jan*_*cek 3 sql-server stored-procedures

我有以下SQL不起作用:

declare @id INT; 
set @id=0; 
exec insert_mail @id OUTPUT, 'ZLgeOZlqRGC6l57TyD/xYQ==', 4928, '2010\01\14\14\03131_2.eml', 'Suz, Katie and Kourtney''s Housewarming Party', CONVERT(DATETIME, '2015-01-18 14:03:13', 120); 
select @id;
Run Code Online (Sandbox Code Playgroud)

并以这种方式更改它修复它:

declare @id INT; 
set @id=0; 
declare @p_valid_until datetime;
set @p_valid_until=CONVERT(DATETIME, '2015-01-18  14:03:13', 120)
exec insert_mail @id OUTPUT, 'ZLgeOZlqRGC6l57TyD/xYQ==', 4928, '2010\01\14\14\03131_2.eml', 'Suz,  Katie and Kourtney''s Housewarming Party', @p_valid_until; 
select @id;
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下吗?

干杯,简

Aar*_*and 10

你不能在传递参数时调用函数.这些参数值应该是常量或参数.