【发布时间】:2016-01-09 01:14:01
【问题描述】:
我在 MS ACCESS 2013 中创建了一个动态 SQL 字符串构建器来为我的用户创建报告。这些报告基本上从用户可以使用表单控件更改的预设字段池中查询数据。我使用条件语句来构造 SELECT 和 WHERE 语句没有问题,但是我一直在使用基于我的表关系的静态字符串来生成 FROM 语句。我已经开始收到 ambiguous external joins 错误,但是当我解决它时,我得到了重复的报告数据。我想知道是否可以根据用户从不同表中选择的字段动态构造 FROM 语句。
Table relationships I copied the FROM SQL from is shown here
这是我正在使用的静态 FROM 字符串,它给了我错误
FROM (((((((tbl_PROJECTS_PARENT LEFT JOIN tbl_PROJECTS_CHILD ON
tbl_PROJECTS_PARENT.WR_ID = tbl_PROJECTS_CHILD.WR_ID) LEFT JOIN
tbl_PROJECTS_FACILITIES ON tbl_PROJECTS_PARENT.WR_ID =
tbl_PROJECTS_FACILITIES.WR_ID) LEFT JOIN tbl_SPC_GFEBS_BLDG ON
tbl_PROJECTS_FACILITIES.FACILITY_ID = tbl_SPC_GFEBS_BLDG.Building) LEFT
JOIN tbl_CLEARANCE ON tbl_PROJECTS_PARENT.WR_ID = tbl_CLEARANCE.WR_ID)
LEFT JOIN tbl_RMP ON tbl_PROJECTS_CHILD.ID_WBS = tbl_RMP.ID_WBS) LEFT JOIN
tbl_RMP_FY ON tbl_PROJECTS_CHILD.ID_WBS = tbl_RMP_FY.ID_WBS) LEFT JOIN
tbl_COMMENTS ON tbl_PROJECTS_PARENT.WR_ID = tbl_COMMENTS.WR_ID) RIGHT JOIN
Qry_comments_latest_basic ON tbl_COMMENTS.WR_ID =
Qry_comments_latest_basic.WR_ID
对于没有使用代码插入器,我深表歉意。无法让它显示整个区块。
【问题讨论】:
-
您的问题不清楚。如果您的问题是“我想知道是否可以根据用户从不同表中选择的字段动态构造 FROM 语句。”当然可以。如果您对特定的“动态生成的查询”有错误,那么您应该发布整个查询以及确切的错误消息。