作为工作的一部分,我被分配到一个庞大的 Java EE 项目,其中散布着数百条 SQL 语句。我在我的计算机上设置了项目,并且能够很好地部署网站,并且可以毫无问题地使用 99% 的网站。不过,我遇到了一个奇怪的案例,那就是我尝试在网站上创建一个条目(它是一种基于政府形式的项目)。当程序尝试执行查询时,MySQL 会抛出异常:
SELECT d.id, ..., dol.weight, d.status
FROM DeliveryOrderEJB d, InbondEJB_DeliveryOrderEJB_link lnk
LEFT JOIN DOLineEJB dol
ON dol.id=(
SELECT MIN(dol2.id)
FROM DOLineEJB dol2
WHERE d.id=dol2.DeliveryOrderEJB_lines
)
WHERE d.id=lnk.DeliveryOrderEJB_id
AND lnk.InbondEJB_itNo='...'
ORDER BY d.id
它给我的例外是Unknown column 'd.id' in 'where clause'
我感到困惑的部分是为什么它似乎在生产机器上运行良好,而这似乎是我机器上唯一失败的地方。该列显然存在于 DeliveryOrderEJB 表中。
谢谢!