You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VB6 ADO Recordset如何用Unicode文本通过Filter方法筛选?

VB6 ADO Recordset 筛选Unicode文本的正确方案

在VB6中处理ADO Recordset的Unicode文本筛选时,不需要使用SQL里的N'...'语法,原因如下:

  • VB6的原生String类型本身就是UTF-16 Unicode编码,直接传入的Unicode文本会被ADO正确识别
  • N'...'是T-SQL专属的Unicode字符串标识语法,并不适用于ADO Recordset的Filter表达式

正确代码示例

直接将Unicode文本用单引号包裹即可:

Rs.Filter = "Name = '英語'"  ' 可正常筛选Unicode内容

更稳妥的写法(处理含单引号的文本)

如果筛选的Unicode文本中包含单引号,需要用两个单引号转义,建议通过变量拼接来避免编码问题:

Dim targetName As String
targetName = "英語'測試"  ' 包含单引号的Unicode文本
Rs.Filter = "Name = '" & Replace(targetName, "'", "''") & "'"

内容的提问来源于stack exchange,提问作者Al007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 13:57:34