如何解决数据类型 ntext 和 varchar 在not equal to 运算符中不兼容?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决数据类型 ntext 和 varchar 在not equal to 运算符中不兼容?相关的知识,希望对你有一定的参考价值。
参考技术A1.直接改数据库字段类型。
2.把SQL语句修改为:select * from A where convert(nvarchar(255),test)=’xxx’。
因为不管是text还是nvarchar,实体类中的影射都应该是string,因为C#只有一个string是用来表示字符串的,不过这两个数据类型在数据库中是完全不同的,所以无法在他们之间进行比较操作,尤其那个ntext,很多操作都不能做,就算是两个ntext类型,也没有办法进行比较操作。
test字段为ntext类型
SQL语句:select * from A where test=’xxx’
执行之后会出现:
数据类型 ntext 和 varchar 在 equal to 运算符中不兼容的错误信息。
那把SQL语句该成:select * from A where test=convert(ntext,’xxx’)
结果出现:数据类型 ntext 和 ntext 在 equal to 运算符中不兼容的错误信息。
如何解决:数据类型 ntext 和 varchar 在not equal to 运算符中不兼容
select * from hrmdepartmentdefined where zhbgly = ‘36‘ 会报错。显示
【Err】42000-sql server 数据类型 text和varchar 在equal to 运算符中不兼容。
正确的写法为:
select * from hrmdepartmentdefined where convert(varcahr(1000),zhbgly) = ‘36‘
本文出自 “霸王别集” 博客,请务必保留此出处http://zhangtainren.blog.51cto.com/448826/1983546
以上是关于如何解决数据类型 ntext 和 varchar 在not equal to 运算符中不兼容?的主要内容,如果未能解决你的问题,请参考以下文章
数据类型 ntext 和 varchar 在not equal to 运算符中不兼容 -九五小庞
数据类型 ntext 和 varchar 在 equal to 运算符中不兼容。
Sqlserver 报错“参数数据类型 ntext/text 对于 replace 函数的参数 1 无效”的解决方案及原理分析扩展
当列是NTEXT时,SQL Server:IN('asd')不工作