CREATE   procedure Love_OnTopTables
              @TableName varchar(50),
              @IDName varchar(50), 
       @OnTopID int,
              @IsTop int
AS
declare @SQLstr varchar(400)
declare @SQLstr1 varchar(400)
set @SQLstr=''
set @SQLstr=''
if @IsTop=1
begin
       set @SQLstr ='update '+(@TableName)+'  set OnTop=0 where  '+(@IDName)+'<>'+cast(@OnTopID as int )
      set @SQLstr1='update '+(@TableName)+'  set OnTop=1 where  '+(@IDName)+'='+cast(@OnTopID as int )
begin tran
 exec (@SQLstr)
 exec (@SQLstr1)
if @@error<>0
  begin
   return -1
   rollback
 end
else
   return 1
commit tran
end
else
    set @SQLstr ='update '+(@TableName)+'  set OnTop=0 where  '+(@IDName)+'='+cast(@OnTopID as int )
   exec (@SQLstr)
if @@error<>0
      return -1
else
       return 1
GO