sql 的 update 语句的一个问题

来源:百度知道 编辑:UC知道 时间:2024/06/24 00:45:40
为了防止重复投票,我用投票人名字段来记录透过票的人

投票时的sql语句这样写的:

"update 博客 set 鲜花=鲜花+1,投票人名='" + HttpContext.Current.User.Identity.Name + "|' where 编号=" + Request["id"]

意图是每次投票后原来为空的字段内写入投票人的 username,再加一个 | 分隔。但是执行以后,鲜花字段数字起了变化,投票人名字段没有任何变化。我错了吗?
update 博客 set 投票人名=投票人名+'" + HttpContext.Current.User.Identity.Name + "' where 编号=" + Request["id"]
我测试了一下2种情况,
1,如果“投票人名”原本为空,这条语句执行下来没有任何反应;
2,如果“投票人名”不为空,执行后会将 现在的登陆用户id追加写入“投票人名”字段。

那为什么原来的值是空的话,他就不追加呢?这要怎么解决?

因为空加任何值都是空的,那么你判断一下它是否为空就可以了.

update 博客 set 投票人名=isnull(投票人名,'')+'" + HttpContext.Current.User.Identity.Name + "' where 编号=" + Request["id"]

你可以这样
string aa=null;
aa+="|"+HttpContext.Current.User.Identity.Namel

update 博客 set 鲜花=鲜花+1,投票人名='" + aa+"' where 编号="+Request["id"]