【发布时间】:2018-10-30 01:29:10
【问题描述】:
我在 JET/Access SQL 方面非常糟糕,这让我很沮丧。输入下面的代码时出现上述错误,我不明白为什么 - 这基本上只是一个大的 IIf/then 语句。如果有任何帮助,它似乎正在突出显示“PB”部分:
REQUIREMENT_TYPE_DESCRIPTION: IIf([REQUIREMENT_TYPE]="01","Warehouse Sales Orders",IIf([REQUIREMENT_TYPE]="04","Warehouse Sales Orders",IIf([REQUIREMENT_TYPE]="TB","Warehouse Sales Orders",IIf([REQUIREMENT_TYPE]="KE","Dedicated Sales Orders",IIf([bal]=0,"Warehouse Sales Orders",
IIf([REQUIREMENT_CATEGORY] = “A60380029”, "Warehouse Sales Orders,
IIf([REQUIREMENT_CATEGORY] = “A60380021”, “Warehouse Sales Orders,
IIf([REQUIREMENT_CATEGORY] = “A60380020”, “Warehouse Sales Orders,
IIf([REQUIREMENT_CATEGORY] = “A60380007”, “Warehouse Sales Orders,
IIf([REQUIREMENT_CATEGORY] = “A60380001”, “Warehouse Sales Orders,
IIf([REQUIREMENT_TYPE]="PB","Forecast","Excess")))))))))))
【问题讨论】:
-
您那里似乎有一些弯弯的双引号,Access 不会接受。修复它,然后再次尝试运行它。
-
它们也被称为“智能引号”,Access 无法识别它们。如果您在 Word 等应用程序中键入代码,然后复制/粘贴,则可以拾取这些字符。从网页复制/粘贴也会导致相同的结果。
-
如果您是从 VBA 代码进行此调用,请考虑使用
switch函数 see here。 -
在查询中也可以使用 Switch() 函数。
-
"Warehouse Sales Orders,字符串的一部分也没有右引号