MS Access不断破坏我的查询

时间:2017-06-13 21:24:20

标签: sql ms-access ms-access-2010

我在MS Access中编写了一个查询,我能够成功运行。但是每当我回到MS Access 2010中的Design View时,它都会将它更正为SQL,甚至无法正常工作!

这是我的原始SQL(我成功运行):

SELECT [AssetTypeCounts].DELIVERED_IDENTIFIER, 
[AssetTypeCounts].DELIVERED_SOURCE, 
Switch([AssetTypeCounts].TYPES<1,"Missing",
[AssetTypeCounts].TYPES=1,"Correct",[AssetTypeCounts].TYPES>1,"Conflicting") AS STATUS
FROM (
  SELECT DELIVERED_IDENTIFIER, DELIVERED_SOURCE, Sum(IIf(Len(PRODUCTTYPE)>0,1,0)) AS TYPES 
  FROM (
    SELECT DISTINCT DELIVERED_IDENTIFIER, PRODUCTTYPE, BILLINGCODE, DELIVERED_SOURCE    
    FROM AprilUsageFile) AS "DisctinctAssetIdBySource"
  GROUP BY DELIVERED_IDENTIFIER, DELIVERED_SOURCE 
)  AS AssetTypeCounts;

回到设计视图后,我收到错误:

  

该字段太小,无法接受您尝试添加的数据量。尝试插入或粘贴较少的数据。

我甚至没有机会编辑查询。

为什么Access会不断更改我的查询?

我可以禁用MS Access更改查询的功能吗?

2 个答案:

答案 0 :(得分:0)

尝试通过立即窗口打印来创建新查询:

Dim qDef As DAO.QueryDef
Set qDef = CurrentDb.QueryDefs("NameOfBrokenQuery")
Debug.Print qDef.SQL

答案 1 :(得分:0)

作为一般规则,永远不要在设计器模式下打开SQL查询,因为访问将始终改变部分,然后更改它将更难。