废话就不说了,代码如下:
create proc P_public_Tabal_Order @tables nvarchar(20),--表名 @pxname nvarchar(20),--要排序的字段 @order nvarchar(20),--排序条件,一字是字符型 @strWher nvarchar(36)--条件,没有就传1=1 as begin declare @sqlStr nvarchar(1000) set @sqlStr='update a set ['+@pxname+']= RowNum from(select row_number()over(order by '+@order+' asc) as RowNum,* from ['+@tables+'] where '+@strWher+') as a where '+@strWher+'' exec (@sqlStr) end
代码测试通过!!