SQL server查询之(The data types text and nvarchar are incompatible in the equal to operator.)

遇到BUG

今天工遇到高级索的功能报错.

查找BUG

其它单据用的好好的,怎么就偏偏这个报错了呢,一看错误日志The data types text and nvarchar are incompatible in the equal to operator.首先就想到是SQL语句那块出了问题,于是乎,改了改代码,把原本的F_CurNode=’开始’,改成了CAST(F_CurNode AS nvarchar(max)) = ̵6;开始’,搞定ok。问题立马解决了。

事后总结

虽然我解决了,但是并没有找到事情的根据原因。后面经同事查看别的单据都可以,而这个不可以,为什么这个用的text,不会是其他同事做的时候写错了。于是乎select LEN(CAST(字段名 AS VARCHAR(8000))) from 表名 ORDER BY LEN(CAST(字段名 AS VARCHAR(8000))) DESC; 发现最大值只有42,故此是数据库字段类型写错,故把text类型改成VARCHAR类型即可解决

思考

看问题还是局于表面,我看到的只是一个点,而同事确能以点到面。自身能力确实不足,还需升。代码之路,任重道远。只有点滴积累,多多写,多思考,方可有所成就

荐: SQL server查询之(The data types text and nvarchar are incompatible in the equal to operator.)

遇到BUG 今天工作中遇到一个高级搜索的功能报错. 查找BUG 其它单据用的好好的,怎么就偏偏这个报错了呢,一看错误日志The data types text and nvarchar are incompatible in the equal to oper…

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容