如何用表变量名?

ciper 2006-04-17 05:25:34
偶的系统要做一个推荐的批量处理,被推荐的记录在一个专门的表里(Commend),数据如下
id是被推荐的信息id号,commend是推荐等级
id commend
1 1
2 1
212 1
555 2
5666 4


偶现在是再继续推荐数据,比如推荐的id为1,2,3,4,5,都推荐为3级,这样1,2已经在里面了
批量处理的时候获得的数字字符是(1,2,3,4,5)这样的
怎么写一个存储过程实现如下效果啊
把1,2的commend更新为3,然后加入3,4,5的数据,等级也为3
有朋友给出存储过程如下:
Create PROCEDURE MyTest
@ids varchar(1000),
@commend int
AS
BEGIN
declare @index int
declare @a_id int
declare @s_id varchar(20)
set @ids = @ids + ','
set @index = charindex(',', @ids)
while (@index > 0)
begin
set @s_id = left(@ids, @index - 1)
set @a_id = convert(int, ltrim(rtrim(@s_id)))
update Commend set commend = @commend
where id = @a_id
if @@rowcount <= 0
begin
insert into Commend(id, commend)
values (@a_id, @commend)
end
set @ids = Right(@ids, len(@ids) - len(@s_id) - 1)
set @index = charindex(',', @ids)
end
return 1
END
GO


现在我的问题是,因为好多表都有类似的需求,所以想把commend表搞成一个变量传进去@tblName,该如何修改呢?
...全文
184 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
gahade 2006-04-17
  • 打赏
  • 举报
回复
用动态sql实现
ciper 2006-04-17
  • 打赏
  • 举报
回复
tt

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧