日期:2014-05-19  浏览次数:20492 次

update 字段值叠加更新问题
如下   table   表

ID     name1       name2          
------------------------------------
1           45               55       (整数类型)
2           77               88        

3       略...


我想用update   更新   name1   字段的值每条增加100

update   [table]   set   [name1]   =   name1+100  

整数相加为什么不成功?

错误类型:
Microsoft   VBScript   运行时错误   (0x800A000D)
类型不匹配:   '[string:   "name1 "] '



------解决方案--------------------
你的SQL语句没问题.看看name1 的数据为类型是不是int类型.或者是你的程序定义类型有问题!
------解决方案--------------------
是否是你数据库中将 字段 name1 定义成了 varchar之类的 字符型字段了


update [table] set [name1] = cast(name1 as int) + 100
------解决方案--------------------
create table A(id int,name1 int,name2 int)

insert into A
select 1,44,55
union all select 2,77,88


(所影响的行数为 2 行)

select * from a

update A set [name1] = name1+100

select * from a