CREATE PROCEDURE login
@m int=9 output
AS
exec (' set '+''''+convert(varchar,@m)+''''+'=1' )
print @m
GO
@m int=9 output
AS
exec (' set '+''''+convert(varchar,@m)+''''+'=1' )
print @m
GO
调试欢乐多
@m int=9 output
ASexec sp_executesql N'set @m=1',N'@m int output',@m output
print @m
GO
exec [login]
drop PROCEDURE login
CREATE PROCEDURE login
@m int output
AS
set @m=9
exec ('declare @m int set @m=1' )
print @m \\还是9
GO