update12 Coldfusion 2018 后按顺序返回重复列的查询 ( QoQ ) 的查询

Kan*_*n.P 4 coldfusion qoq coldfusion-2018

我已使用 Adob​​e 的最新update12更新了我的 Coldfusion 2018 服务器。一旦我更新了服务器,我就在 QoQ 中使用 ORDER BY为我的应用程序编写了一些 QoQ 。每当我在 QoQ 中使用 order by 时,结果数据都会有一些重复的列。

For my simple sample query as example, 

<cfquery name="testRead" datasource="testmssql">
        SELECT * FROM loginDetails
    </cfquery>

    <cfdump var="#testRead#" label="Main Query">

    <cfquery name='readSub' dbtype="query">
      SELECT userID, Username FROM testRead 
      ORDER BY userid DESC
    </cfquery>

    <cfdump var="#readSub#" label="QoQ Result" abort="true">

**Output:** Refer my image please.
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在这里您可以看到第二个 QoQ 转储有两个 userID 列。我不知道为什么我们把它放在这里以及它从哪里来。?如果我在 ORDER BY 列表中再添加一列,那么该列也会在结果查询中重复。例如,如果添加 ORDER BY userid DESC, userName,则查询转储查询具有 userID,userid,userName,username。

注意:在我的 update12 之前不会发生这种情况。主查询不会发生这种情况。

Any thoughts ? Please share. Thank you advance !.
Run Code Online (Sandbox Code Playgroud)

Mig*_*l-F 5

这是更新的一个已知问题,并且已向 Adob​​e 提交了一个错误。我建议您添加评论并为该错误投票。

Adobe 错误跟踪器 - CF-4212383

在包含 ORDER BY 子句的查询中的查询中出现重复的同名列。

该错误的描述:

问题描述:

应用 CF 2021 Update 2 后,在 QoQ 中使用 ORDER BY 子句时,ORDER BY 子句中的字段已区分大小写,如果它们与 SELECT 列表中字段的大小写不完全匹配,则会出现重复列被添加到结果查询中,从而产生具有两个(或更多)同名列的查询。

此外,如果没有字段添加到 SELECT 列表并使用 * 代替,则 ORDER BY 子句中的字段必须大写,否则结果查询中会再次出现同名(但大小写不同)的重复列。

CF 2021 Update 2 中引入了这种显示停止行为。CF2021 Update 1 的行为符合预期。(CF2016 的表现也符合预期)。

尽管该错误提到了 CF 2021 Update 2,但它也会影响 CF 2018 Update 12。经为 CF 2018 Update 12 提交的错误 CF-4212430验证,该错误已作为 CF 2021 bug 的重复项被关闭。