Access 2007 CInt查询问题



这个问题可能有一个非常基本的答案,但我正在竭尽全力解决我的问题。我正在使用Access 2007。

我的查询如下所示:

SELECT Pricing.*
FROM OrderReceipt_be 
INNER JOIN Pricing ON CInt(OrderReceipt_be.[Pricing Table Option Code]) = Pricing.ID 
WHERE OrderReceipt_be.[PO_Number] = PONumber();

无论出于何种原因,[PO_Number]字段都存储为键的文本,键是一个长整型。这就是我试图将其转换为整数的原因。

然而,当我运行查询时,我得到错误

"编译错误。在查询表达式CInt(OrderReceipt_be.[Pricing表选项代码])=定价.ID".

我做了一些基础研究,似乎最常见的问题是我错过了一个参考图书馆。然而,在浏览了整个列表后,我没有看到任何引用被标记为"丢失",所以它一定是其他内容。我还尝试过禁用和重新启用所有启用的参考库,看看这是否有帮助,但到目前为止什么都没有。

有什么想法吗?

如果您的代码可以为Null,请尝试:

SELECT Pricing.*
FROM OrderReceipt_be 
INNER JOIN Pricing ON Val(Nz(OrderReceipt_be.[Pricing Table Option Code])) = Pricing.ID 
WHERE OrderReceipt_be.[PO_Number] = PONumber();

或者尝试反向转换:

SELECT Pricing.*
FROM OrderReceipt_be 
INNER JOIN Pricing ON OrderReceipt_be.[Pricing Table Option Code] = CStr(Pricing.ID) 
WHERE OrderReceipt_be.[PO_Number] = PONumber();

最新更新