1、这样写是错误的
EXEC dbo.initTest 1,convert(varchar(7),getdate(),120)+'-01'
2、要这样写
declare @CurMonthFirstDay VARCHAR(128)
SELECT @ttt=convert(varchar(7),getdate(),120)+'-01'
EXEC dbo.initTest 1,@ttt
这个不仅仅是因为“逗号”不认导致的,比如下面这个
EXEC dbo.initTest floor(1.0),@ttt
同样无法执行,必须和存储过程的参数定义一致