gpt4 book ai didi

coldfusion - 比较 Coldfusion cfquery 中的两个字符值

转载 作者:行者123 更新时间:2023-12-01 22:51:54 26 4
gpt4 key购买 nike

我有一个数据库字段,其中包含 VARCHAR 值,例如

XY23(CX Web)

我正在写一个类似查询的查询

SELECT qPdfs.filename, qPdfs.code, qObjects.id
FROM qPdfs, qObjects
WHERE qPdfs.code = qObjects.code

或者喜欢

SELECT qPdfs.filename, qPdfs.code, qObjects.id
FROM qPdfs, qObjects
WHERE <cfqueryparam value="#qObjects.code#" cfsqltype="CF_SQL_VARCHAR"> = <cfqueryparam value="#qPdfs.code#" cfsqltype="CF_SQL_VARCHAR">

但是我收到了这样的错误信息

XY23(CX Web) must be interpretable as a valid number in the current locale.

有什么帮助吗?

谢谢

最佳答案

两个数据库列的类型都是 varchar 吗?如果是这样,则 QoQ 可能会根据列的内容应用一些隐式转换。如果某些代码都是数字,则 QoQ 可能会在执行比较之前尝试在内部将它们转换为数字。因此错误。 cfqueryparam 在这里无济于事,因为它只能用于文字,不能用于查询列。如果直接相等比较即 ColName = ColName 导致该错误,请尝试强制转换:

WHERE CAST(qPdfs.code AS VARCHAR) = CAST(qObjects.code AS VARCHAR)

注意:QoQ 字符串比较区分大小写,因此您可能希望先将列转换为大写/小写。

关于coldfusion - 比较 Coldfusion cfquery 中的两个字符值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27842366/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com