在 cfquery 结果上使用 StructKeyExists

问题描述

我有一个列名列表并遍历它们以查看名称是否存在作为使用“StructKeyExists”的结构中的键 - 按预期工作。

但是当我在单行 cfquery 结果上尝试相同的结果时,它也可以工作 - 我预计它会崩溃。

为什么它适用于 cfquery 结果?

如果 cfquery 结果超过 1 行,我预计会出现问题,但在这种情况下,商业规则不允许这样做。

解决方法

它正在检查结构键,而不是查询中的各个行。因此,如果您查询有一个名为“id”或“columnName”的列,并且您使用 structkeyexists 来检查键,例如"id" 或 "columnName" 您正在询问 CFML 该查询是否具有名为该列的列。查询返回的行数与此无关。