update table set string_field=string_field+'my home' 出现错误?
为什么我用update table set string_field=string_field+'my home' 这样它运行会出现这样的错误,string or binary data would be truncated
按常理这只是字符运算而以,但如果我把它改成这样string_field='test'+'ok'这样就可以,如果另外字段是int类型的它就可以这样来运算。这是为什么?
问题点数:20、回复次数:13Top
1 楼zheng(一笑)回复于 2000-12-28 13:13:00 得分 5
update table set string_field=string_field||'my home';Top
2 楼adrianx(蓝色心情)回复于 2000-12-28 13:15:00 得分 5
update table set string_field=CONCAT(string_field,'my home')
试试这个Top
3 楼Hank(星星农场)回复于 2000-12-28 13:26:00 得分 5
update table set string_field=string_field+''my home''
两个引号Top
4 楼ePing(是谁动了我的CSDN的ID?)回复于 2000-12-28 14:08:00 得分 0
update table set string_field= ''' + string_field + 'my home''''
可能是这样的!
三少 :o)
Top
5 楼wzs(兔子)回复于 2000-12-28 14:59:00 得分 0
各位弟兄,谢谢回答,但我试了都不行,不过我却发现,只要字段为NULL的都不能进行运算,但只要把它的初始值设为field=''这样就可以运算。Top
6 楼wzs(兔子)回复于 2000-12-28 15:34:00 得分 0
补充:以上如果用这样的方法做还是会错:field:='';field=field+'test'但只要把FIELD='TEST'+FIELD;这样就不会出错,不知这是为什么?难道是BUG?Top
7 楼ePing(是谁动了我的CSDN的ID?)回复于 2000-12-28 15:40:00 得分 0
我看肯能还是你的做法有问题,将代码贴出来大家分析分析。
三少 :o)Top
8 楼zxtyhy(地图鱼)回复于 2000-12-28 16:15:00 得分 5
字段为NULL不能相加,
Z
SQL.Add('UPDATE aaa2 SET wgproid=wgproid+'+#39+'222'+#39+' where id=2');Top
9 楼zxtyhy(地图鱼)回复于 2000-12-28 16:24:00 得分 0
1.字段为NULL不能相加,
用以下方法:
UPDATE table SET string_field=ISNULL(string_field, '')+'222'
2.出现错误提示是因为你设的字段长度太短了,字符相加的长度超过了设定值Top
10 楼wzs(兔子)回复于 2000-12-28 16:39:00 得分 0
to:zxtyhy长度方面我也有做过但还是会出错。不信你可以试试Top
11 楼wzs(兔子)回复于 2000-12-28 16:45:00 得分 0
to:eping 我的程序太长,不好看,不方便贴出来,但我在SQL SERVER7。0中的query analyzer试了一个简单的命令就是以上说的它也会出现同程序一样的错误。Top
12 楼zheng(一笑)回复于 2000-12-28 17:58:00 得分 0
我的方法难道sql server不支持?我在oracle中是这么用的.Top
13 楼The_east_key(东方一键)回复于 2000-12-29 13:22:00 得分 0
建议您访问www.etechbase.net/tech,里面有很多资料,也许可以解决您的问题。
访问http://168.168.18.11:81/etechbase/advsearch.php将您的问题输入查询内容框,选择不同的精确程度,即可以找到你所需要的答案。效果还是可以的。Top




