之前,习惯性地写查询语句时,查询条件用“=”判断。今天写程序的时候,查询时突然报了一个错误:数据类型text和varchar在equal to 运算符中不兼容。提示如下:
The data types text and text are incompatible in the equal to operator.
查找相关资料发现Text类型的属性不能用“=”判断相等,因为它不支持,可以用“like”判断。
另外还有几点需要注意:
(1):Text字段类型不能直接用replace函数来替换,必须用updatetext
(2):字段比较不能用 where 字段 = ‘某数据’,可以用like来代替
(3):updatetext时,若@ptrval值为空会出错,需注意*/
也有人说text现在很少用了,因为在MS SQL2005及以上的版本中,加入大值数据类型(varchar(max)、nvarchar(max)、varbinary(max) )。大值数据类型最多可以存储2^30-1个字节的数据。
这几个数据类型在行为上和较小的数据类型varchar、nvarchar和varbinary相同。
微软的说法是用这个数据类型来代替之前的text、ntext和image数据类型,它们之间的对应关系为:
varchar(max)——-text;
nvarchar(max)—–ntext;
varbinary(max)—-image.
ps:原文地址
http://www.cnblogs.com/xfq-sean/p/4625531.html