sql:function
--查询权限函数 --1 declare @names varchar(3000) set @names='' select @names=@names+isnull(AdminPermissFormName,'')+' , ' from BookAdminPermissTypeList where AdminPermissTypeID in(8,9,10) set @names=left(@names,len(@names)-1) print @names select @names --2 declare @sql nvarchar(4000),@where nvarchar(1000) set @sql='' set @where='8,9,10' set @sql=@sql+'declare @names varchar(3000)' set @sql=@sql+' set @names=''''' set @sql=@sql+' select @names =@names +isnull(AdminPermissFormName,'''')+'' , '' from BookAdminPermissTypeList where AdminPermissTypeID in('+@where+')' set @sql=@sql+' set @names=left(@names,len(@names)-1)' set @sql=@sql+' select @names' print @sql --exec (@sql) exec sp_executesql @sql --不可以用 if exists(select 1 from sysobjects where name = 'f_GetAdminPermissFormFullName' and xtype = 'FN') drop function f_GetAdminPermissFormFullName go CREATE function f_GetAdminPermissFormFullName ( @AdminPermissTypeID nvarchar(1000) ) returns nvarchar(1000) as begin declare @sql nvarchar(4000),@re nvarchar(1000) set @sql='' --set @where='8,9,10' set @sql=@sql+'declare @names varchar(3000)' set @sql=@sql+' set @names=''''' set @sql=@sql+' select @names =@names +isnull(AdminPermissFormName,'''')+'' , '' from BookAdminPermissTypeList where AdminPermissTypeID in('+@AdminPermissTypeID+')' set @sql=@sql+' set @names=left(@names,len(@names)-1)' set @sql=@sql+' return @names' return exec(@sql) end go
用存储过程:
CREATE PROCEDURE proc_Select_BookAdminPermissAssignment ( @AdminPermissTypeID varchar(1000) ) AS declare @sql varchar(4000) set @sql='' set @sql=@sql+'declare @names varchar(3000)' set @sql=@sql+' set @names=''''' set @sql=@sql+' select @names =@names +isnull(AdminPermissFormName,'''')+'' , '' from BookAdminPermissTypeList where AdminPermissTypeID in('+@AdminPermissTypeID+')' set @sql=@sql+' set @names=left(@names,len(@names)-1)' set @sql=@sql+' select @names' exec (@sql) GO
哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)生存.---Geovin Du(涂聚文)