Этот код:
EXEC sp_executesql N'
CREATE PROCEDURE [dbo].[a]
(
@VarA NVARCHAR(200), -- Path to exe e.g. e:\blah\blah\
@VarB INT -- 1 to log actions
)
AS
BEGIN
PRINT @VarA
PRINT @VarB
END'
GO
Это вызовет ошибку:
Msg 102, Level 15, State 1, Procedure a, Line 5 [Batch Start Line 0]
Incorrect syntax near ')'.
Msg 137, Level 15, State 2, Procedure a, Line 9 [Batch Start Line 0]
Must declare the scalar variable "@VarB".
Если вы удалите \, вместо этого используйте e: \ blah \ blah;если вы добавите пробел после того, как \ оно работает - все это, похоже, связано с этим ...
Итак - это ошибка?
Спасибо, доктор Майкл Дай.