【发布时间】:2020-11-27 10:45:23
【问题描述】:
变量$extra_query破坏了代码分析功能的逻辑并抛出错误:
SELECT *, so.`Location` as so_loc
FROM vw_dispatch
left join sales_orders so on vw_dispatch.customerOrderNo = so.External_Document_No
left join customer_data cd on so.Customer_ID = cd.no
where 1 = 1
and archived = 0
and processed = 0 $extra_query
order by vw_dispatch_id desc
limit 0,200
我应该停止检查此类错误情况吗? 我应该使用其他方式来注入该变量吗?
【问题讨论】:
-
供参考:在 PhpStorm 问题跟踪器上相同:youtrack.jetbrains.com/issue/WI-57194
-
我想知道:如果您从查询中删除
1 = 1 and archived = 0 and processed = 0部分并将其移动到实际的$extra_query内容中(所以整个 WHERE 逻辑都在那里)——它会更好吗? -
这一行
and processed = 0 $extra_query必须是什么意思?您希望在执行期间在变量中具有什么值? -
@LazyOne 我试过了,它仍然显示错误:screencast.com/t/cSPocVrjSVDQ
-
@Akina 此变量的值将向查询添加更多可能的过滤器。它是 WHERE 逻辑的一部分。我的疑问是如何在 PHPStorm IDE 中集成这些查询,以便代码分析更好地理解这一点。
标签: mysql intellij-idea phpstorm