不能比较或排序 text、ntext 和 image 数据类型
2008-12-26 20:58
387 查看
最近在开发一个文件管理系统的时候,遇到一个问题:本来偶在本地的数据库是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
---------------------------
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
相关文章推荐
- sql distinct 不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符
- 不能比较或排序 text、ntext 和 image 数据类型
- 不能比较或排序 text、ntext 和 image 数据类型
- 不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。
- GROUP BY 不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。
- 不能比较或排序text、ntext和image数据类型,除非使用IS NULL 或 LIKE 运算符。
- 如何解决 不能以 DISTINCT 方式选择 text、ntext 或 image 数据类型
- 转:邹建--对于局部变量,text、ntext 和 image 数据类型无效
- MySQL数据类型char、varchar、text的比较
- SQL Server 2005 'Text,nText,image'数据类型被替代
- mysql 的数据类型TEXT 和 BLOB比较
- NHibernate 中 text 和 image 数据类型在配置文件中对应类型
- .SQL Server中 image类型数据的比较
- mysql数据库text、varchar、blob数据类型比较
- 存储sql2000特殊数据类型--image,text
- .SQL Server中 image类型数据的比较
- text、ntext 和 image 数据类型无效 ( 不允许从数据类型 ntext 到 varchar 的隐性转换) 的解决方法
- SQL Server 2005:请使用 varchar(max)、nvarchar(max) 和 varbinary(max) 数据类型,而不要使用 text、ntext 和 image 数据类型。
- 读取sql2000特殊数据类型--image,text
- 求解一个设计到ntext text image的数据类型触发器