当前位置: 首页 > article >正文

Sqlserver 模糊查询中文及在mybatis xml【非中文不匹配查询】N@P2问题

问题

sqlserver模糊查询或相等,两者都无法查询。

百度方案解释

Like 后的N是表示unicode字符。获取SQL Server数据库中Unicode类型的数据时,字符串常量必须以大写字母 N 开头,否则字符串将转换为数据库的默认代码页(字符集编码),这可能导致字符串内容发生变化,无法识别。
在SQL界面中

select * from table where column like N'%文档%'

但是在mybatis这样就不好写了。

注意点

一定不要使用mybatis的where标签,否则mybatis会识别为N@P2
N后面必须用 ‘’ + #{queryColumn} 这种格式

模糊查询

select * from table where 
<if test="queryColumn != null and queryColumn != ''">
	column like N'%'+#{queryColumn}+'%'
</if>

相等查询

结合上面,我们发现N后面不能直接拼接#{queryColumn}参数,否则就会报错!

select * from table where 
<if test="queryColumn != null and queryColumn != ''">
	column = N''+#{queryColumn}
</if>

http://www.kler.cn/a/272228.html

相关文章:

  • NextJs - ServerAction获取文件并处理Excel
  • 他把智能科技引入现代农业领域
  • 细说STM32F407单片机电源低功耗StopMode模式及应用示例
  • 【Node.js]
  • Hnu电子电路实验2
  • C语言之图像文件的属性
  • 在Ubuntu系统中使用Systemctl添加启动项的详细指南
  • sqlite 常见命令 表结构
  • go rabbitmq 操作
  • 体系结构安全第二次作业:调研整理编译器优化引入的安全问题,形成调研报告提交
  • Docker学习之数据管理(超详解析)
  • 鸿蒙内核系统
  • IDEA : 已经有一个永久破解版的IDEA2019版本,现在又想安装最新版本的,俩版本共存,发现新版本打不开的解决方案
  • html5cssjs代码 022 表单输入类型示例
  • 高等代数复习:应试经验:求行列式
  • NFT数字藏品推广途径有哪些?CloudNEO免费个性定制方案,推广您的NFT
  • Selenium笔记
  • C语言 数据在内存中的存储
  • elasticsearch(RestHighLevelClient API操作)(黑马)
  • 从零自制docker-4-【PID Namespace MOUNT Namespace】
  • 深入了解Android垃圾回收机制
  • odoo17开发教程(6):用户界面UI的交互-创建Action
  • ffmpeg 切割音频文件,各种格式(wav, flac, mp3, m4a等)
  • lua gc垃圾回收知识记录
  • 如何在MATLAB中处理图像和视频?
  • AJAX-XMLHttpRequest