sql-server - 你可以使用带有 N 前缀的 DLookUp 函数吗?
问题描述
我正在尝试使用 DLookUp 函数在与 sql 链接的表上搜索特定值。但是,我正在搜索的字符串是泰语。这是我的代码。
Dim cust_Id1 As Variant: cust_Id1 = DLookup("[CustID]", "dbo_TblCustomer", _
"FullName=" & "'" & CustName & "'")
CustID.Value = cust_Id1
我想要做的是通过客户的名字找到客户的 id 并将其存储在一个变量中。我知道我可以像下面的代码一样查询 SQL。
SELECT CustID
FROM [aTable].[dbo].[TblCustomer]
WHERE FullName LIKE N'นามสมมุติ'
有没有办法使用 DLookUp 函数来做到这一点?如果没有,还有什么其他方法可以获取 CustID 值?
解决方案
您不需要N'
在 Access SQL 中。所有字符串都是 unicode (UTF-16) 字符串。
但是请注意,VBE 不支持 unicode 字符串,MsgBox
也不支持它,因此在调试时它可能会显示不正确。但是查找应该可以正常工作。
但是,您的代码应该可以正常工作,如果不能正常工作,则可能不是由于 unicode 字符串。
另请注意,您的代码对 SQL 注入是开放的。您可能想要使用参数。
推荐阅读
- c# - c# 配置类和 KeyVault
- javascript - 由于错误 c004e005 无法完成操作
- java - 系统尝试启动时,liquibase 不会响应
- angular - 角度 4.3 [style.box-shadow] 或 [style.boxShadow] 不工作
- excel - Excel - 复制每个值的次数与另一列中的序列号一样多
- sql - 如何通过比较sql中where子句中的两个字符串来使用case语句
- ruby - 在 Sequel 应用程序中使用多个数据库
- sql - 将 jsonb 列与 Postgres 中的顶级列连接
- docker - 'docker container commit' 命令以何种方式有助于调试?
- angular - 使用 SIGNAL R 的 Angular 7 和 ASP.NET Core 2.2 的 CORS 策略问题