执行存储过程时使用函数作为参数? [英] Using function as a parameter when executing a stored procedure?
本文介绍了执行存储过程时使用函数作为参数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在测试一个存储过程并希望提交GETDATE()"函数来代替参数:
I'm testing a stored procedure and wanted to submit 'GETDATE()' function in place of parameter:
DECLARE @return_value int
EXEC @return_value = my_stored_procedure
@MyId = 1,
@MyDateField = GETDATE()
SELECT 'Return Value' = @return_value
GO
SQL Server 2005 抱怨以下错误:
SQL Server 2005 complains with following error:
')' 附近的语法不正确.
Incorrect syntax near ')'.
有人想了解一下这件事吗?
Anybody care to shed some light on the matter?
推荐答案
每个 MSDN
Execute a stored procedure or function
[ { EXEC | EXECUTE } ]
{
[ @return_status = ]
{ module_name [ ;number ] | @module_name_var }
[ [ @parameter = ] { value
| @variable [ OUTPUT ]
| [ DEFAULT ]
}
]
[ ,...n ]
[ WITH RECOMPILE ]
}
[;]
Execute a character string
{ EXEC | EXECUTE }
( { @string_variable | [ N ]'tsql_string' } [ + ...n ] )
[ AS { LOGIN | USER } = ' name ' ]
[;]
Execute a pass-through command against a linked server
{ EXEC | EXECUTE }
( { @string_variable | [ N ] 'command_string [ ? ]' } [ + ...n ]
[ { , { value | @variable [ OUTPUT ] } } [ ...n ] ]
)
[ AS { LOGIN | USER } = ' name ' ]
[ AT linked_server_name ]
[;]
注意@parameter,您可以指定值或变量或指定默认值.因此,您必须将变量的值设置为 GetDate()(正如其他人指定的那样)并使用该变量.
Notice for @parameter you can either specify a value or a variable or specify Default. So you got to set the value of a variable as GetDate() (as others have specified) and use that variable.
HTH
这篇关于执行存储过程时使用函数作为参数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文