1

最初のステートメントが構文エラーになるのはなぜですか?

-- this does not work: "incorrect syntax near the keyword 'system_user'"
exec dbo.spEmployee_GetRecords @pLoginName = system_user

-- this works
declare @p nvarchar(30);
select @p=system_user
exec dbo.spEmployee_GetRecords @pLoginName = @p

(SQL Server 2005 Express Edition)

4

1 に答える 1

4

これはの構文ですEXECUTE。関数や式ではなく、値または変数のみを渡すことができます。BOLのEXECUTEを参照してください。

于 2012-05-14T07:14:24.423 に答える