CREATE PROCEDURE topsp1 @TopNum varchar(3)
AS
set nocount on
declare @SQLstr varchar(1000)
set @SQLstr = 'select top '+@TopNum+' * from table1'
Begin Transaction
exec(@sqlstr)
If @@error <> 0
Begin
RollBack;
Return -1 ;
End
Commit;
Return 1
GO
AS
set nocount on
declare @SQLstr varchar(1000)
set @SQLstr = 'select top '+@TopNum+' * from table1'
Begin Transaction
exec(@sqlstr)
If @@error <> 0
Begin
RollBack;
Return -1 ;
End
Commit;
Return 1
GO
exec('select top '+@TopNum+' * from table1')即可
Begin Transaction
exec('select top ' + @TopNum + ' * from table1')
...
把@TopNum定义为int,再用SET ROWCOUNT @TopNum