急!!表的字段内容通过存储过程更新!!

gyl086 2008-07-05 11:36:24
我现在有一个表jilu(id(自动),bh(varchar),bm(varchar),leibie(varchar)),我想实现如下的功能:
当添加记录时,通过判断bm字段的值,来填写leibie字段的值,判断情况如下:
如果bm字段的值包含a,leibie字段填为a1
如果bm字段的值包含b,leibie字段填为a2
如果bm字段的值包含c,leibie字段填为a3
如果bm字段的值包含d,leibie字段填为a4

要能实现如上功能,是不是该用存储过程啊?如果是该怎么用?或者可以用其他什么方法?


...全文
54 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
gyl086 2008-07-05
  • 打赏
  • 举报
回复
各位你们好,谢谢赐教,下边还有点问题,起初情况是

如果bm字段的值包含a,leibie字段填为a1
如果bm字段的值包含b,leibie字段填为a2
如果bm字段的值包含c,leibie字段填为a3
如果bm字段的值包含d,leibie字段填为a4

如果情况是除了以上四种情况之外,leibie字段填为a5呢?
-晴天 2008-07-05
  • 打赏
  • 举报
回复
也可以用触发器.
fa_ge 2008-07-05
  • 打赏
  • 举报
回复

楼主可以用公式字段来解决

create table #(name varchar(10),sign as case when name='1' then 2 else 3 end)

insert into #
select '1' union all
select '2'

select * from #
/*
name sign
---------- -----------
1 2
2 3

(所影响的行数为 2 行)
*/

wzy_love_sly 2008-07-05
  • 打赏
  • 举报
回复
用更新语句

update jilu set leibie=case when bm='a' then 'a1' when bm='b' then 'a2' when bm='c' then 'a3' 
when bm='d' then 'a4' end

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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