存储过程参数个数怎么动态化?

baidu_35289351 baidu_35289351 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
如:物料表(编号,名称,类别)当然,很多,这列出几个。

alter proc [dbo].[select_wl]
@bh varchar(6)=null,
@mc varchar(40)=null,
@lb varchar(20)=null

as
begin
declare @set varchar(8000)
set @set=null


if @mc is not null set @set=isnull(@set+',','') + '名称=''' + @mc +''''
if @lb is not null set @set=isnull(@set+',','') + '类别=''' + @lb +''''

if @set is not null set @set='update 物料表 set ' + @set + ' where 编号=''' + @bh +''''

select @set
exec(@set)
end

参数固定,我就指定怎么调用,但参数不固定时,怎么调用
--固定参数

declare @bh varchar(6),@mc varchar(40),@lb varchar(20)
set @bh='A00001'
set @mc='49寸大电视'
set @lb='家电'
exec select_wl @bh,@mc,@lb

--那不固定参数时,怎么调用?比如我只更新 “类别",当然,实际上可能是10个字段。。

...全文

相关推荐

评论 13
收藏 已收藏
分享
返回顶部
baidu_35289351
MS-SQL Server 34,876 成员 254,635 内容