您的位置:程序门 -> ms-sql server -> 基础类



update  问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


update 问题[已结贴,结贴人:weasea]
发表于:2007-04-27 14:35:40 楼主
update   table   set     field=   '100002 ',filed1= ' '

因为field1是int型。当值为 ' '的时候,我本意是null
但这句是赋为0

请问如何解决
发表于:2007-04-27 14:38:441楼 得分:2
update   table   set     field=   '100002 ',filed1=null
发表于:2007-04-27 14:41:152楼 得分:2
update   [table]  
set     field=   '100002 ',
filed1=null
发表于:2007-04-27 14:42:363楼 得分:0
怎么讲呢。。。
你的答案我知道  
因为我是先从别的表select进来的。那字段如果是null,可我select来的就是 ' '。再赋值到table就是0了  
发表于:2007-04-27 14:43:314楼 得分:10
declare   @i   int
set   @i= ' '
select   nullif(@i, ' ')
发表于:2007-04-27 14:44:225楼 得分:0
update   table   set     field=   '100002 ',nullif(filed1, ' ')
发表于:2007-04-27 14:44:256楼 得分:0
不明白...
发表于:2007-04-27 14:49:147楼 得分:6
我也不明白lz的真正要求

1   nullif(列名, ' ')   --把空变成null
2   isnull(列名,0)     --把null变成0
3   case   列名   when   情况1   then   结果1   when   情况2   then   结果2   end   --分情况想变成啥就变成啥

lz字选吧
发表于:2007-04-27 14:49:288楼 得分:0
lz自选吧~
发表于:2007-04-27 14:51:439楼 得分:0
那我问  
一个update语句
如果   update   table   set     field=   '100002 ',filed1= ' '   -field1   为null
        和   update   table   set     field=   '100002 ',filed1= '123 '

  都   符合要求  
谢谢
发表于:2007-04-27 14:58:4710楼 得分:0
strsql.format( "update   table   set     field=   '%s ',filed1= '%s '   ",filed,filed1)
发表于:2007-04-27 15:03:2011楼 得分:0
ok了
谢谢


快速检索

最新资讯
热门点击