Почему я получаю ошибку «Несоответствие типов данных», когда добавляю «CF» в конец строки поиска в операторе SQL в Access? - PullRequest
1 голос
/ 21 февраля 2020

Следующий запрос (qryCurLotNewProducts) создает набор данных, который требуется обработать другим запросом (qryBNP_CFRecordset):

//qryCurLotNewProducts
SELECT tblNewProducts.*
FROM tblNewProducts INNER JOIN tblCurLot ON (tblCurLot.CatalogNum = tblNewProducts.CatalogNum) AND 
(tblNewProducts.LotNum = tblCurLot.CurLot);

output from qryCurLotNewProducts

Когда Я запускаю этот второй запрос, чтобы перечислить только продукты "CF", найденные в первом запросе, я получаю ошибку "Несоответствие типов данных в выражении критерия".

//qryBNP_CFRecordset
SELECT qryCurLotNewProducts.*, tblABCategory.UNSPSC, tblAmount.ProductSize
FROM tblAmount RIGHT JOIN (tblABCategory RIGHT JOIN qryCurLotNewProducts ON tblABCategory.ABCategory = qryCurLotNewProducts.ABCategory) ON tblAmount.Amount = qryCurLotNewProducts.Amount
WHERE (((qryCurLotNewProducts.CatalogNum) Like "A700-###CF") AND ((qryCurLotNewProducts.DateEntered) Between #1/1/2000# And #3/1/2020#))
ORDER BY qryCurLotNewProducts.CatalogNum, Abs(qryCurLotNewProducts.LotNum);

Если я удаляю CF из В строке поиска (т. е. «A700 - ###») запрос правильно выводит список, содержащий все элементы, содержащие этот шаблон:

non-CF material output

Если I используйте строки типа "A700 - #### F" или "A700 - ### ZZ" или другие подобные комбинации, я не получаю ошибку, а скорее пустой набор результатов.

Примечательно, " A700-001CF "," A700-002CF "и др. c все создают ошибку типа данных. Кажется, что-то в комбинации клавиш CF вызывает проблемы.

Кто-нибудь еще видел эту проблему? Нужно ли мне использовать какой-то разделитель, чтобы сказать SQL, чтобы не рассматривать CF как какой-то особый переключатель?

1 Ответ

2 голосов
/ 21 февраля 2020

Abs(qryCurLotNewProducts.LotNum) не будет работать со значениями для продуктов, оканчивающихся на CF. Ваш столбец LotNum имеет текстовый тип.
Редактировать: Ваш столбец LotNum имеет текстовый тип, как показано на первом снимке экрана.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...