当前位置: 代码迷 >> ASP.NET >> 多个字段分别更新,怎么用存储过程实现
  详细解决方案

多个字段分别更新,怎么用存储过程实现

热度:8488   发布时间:2013-02-26 00:00:00.0
多个字段分别更新,如何用存储过程实现?
我所有的数据操作都用存储过程,

如果我分别要修改用户信息表中的不同字段,如果每个字段的更新都用一个存储过程当然简单,但太烦琐,也不够聪明。
我想都用一个存储过程来做,怕如果更新时别的字段因为是空值,将其清空了。

大家帮我想个法吧。

------解决方案--------------------------------------------------------
传入参数为字段名和字段值不就可以更新所有字段了?
------解决方案--------------------------------------------------------
在数据库里设个默认值default( ' ')不就成了吗?
------解决方案--------------------------------------------------------
方法1)先指定好接口,譬如不需要更新的字段用特殊符号代替

譬如 exec aaa '??? ', 'userid ', '??? '
存储过程判断参数是不是指定的字符
方法2)先将记录取到出来,把不需要更新的字段也船进去
------解决方案--------------------------------------------------------
create proc procname
(@columnname varchar(255)
@value datatype
)

as

declare @@sql varchar(500)

set @@varchar= 'update tablename( '+@columnname+ ') values( '+@value+ ') '
exec @@sql

------解决方案--------------------------------------------------------
帮顶 !
  相关解决方案