ξσ Dicky's Blog σξ

朋友多了,寂寞卻沒少,朋友沒有了你,得到了天下最高的技術又能如何?人類的全部才能無非是時間和耐心的混合物.---巴尔扎克

Traditional Chinese

导航

不能比较或排序 text、ntext 和 image 数据类型

最近在开发一个文件管理系统的时候,遇到一个问题:本来偶在本地的数据库是SQL2008,有一个字段SharedUserId 是nvarchar(max)类型,偶在查询SQL语句中用了...AND SharedUserId <> '', 可以正常执行。后来把程序发布到买的空间服务器上,服务器上是SQL2000的数据库,因为SQL2000没有nvarchar(max)类型,所以偶改成了text类型,结果在执行同样的SQL语句时程序就报错了:

---------------------------
Microsoft Internet Explorer
---------------------------
不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。(System.Exception)
---------------------------
OK  
---------------------------

于是,偶把本地的数据库字段类型也改成text,再测试,也报类似错误(偶的SQL2008是英文版的):

---------------------------
Microsoft Internet Explorer
---------------------------
The data types text and varchar are incompatible in the not equal to operator.(System.Exception)
---------------------------
OK  
---------------------------

后来在网上搜索了一下,原来的查询语句稍微修改下,就可以了:...AND SharedUserId <> ''换成...AND DATALENGTH(SharedUserId) > 0 AND SharedUserId IS NOT NULL

posted on 2008-12-26 20:59  ξσ Dicky σξ  阅读(1399)  评论(0编辑  收藏  举报