Почему я получаю «Введите значение параметра» при выполнении моего запроса MS Access?

SELECT ID, 
       Name, 
       (SELECT CityName 
        FROM City 
        WHERE Employee.CityID = City.CityID) AS [City Name] 
FROM Employee 
WHERE [City Name] = "New York"

Я выбираю всех сотрудников, которые приезжают в Нью-Йорк, но всякий раз, когда я запускаю запрос, я всегда получаю окно «Введите значение параметра». Как я могу это исправить?


person Teiv    schedule 20.11.2010    source источник
comment
У вас действительно есть столбец с названием [CityName] или это [City Name]?   -  person CarneyCode    schedule 20.11.2010


Ответы (5)


Это связано с тем, что Access не позволяет использовать псевдонимы полей в запросе — он не распознает [название города] как допустимое имя поля. Псевдонимы используются только как имена полей в наборе результатов. Скорее, вам нужно использовать все выражение.

Таким образом, этот запрос, вероятно, будет легче определить в Access как:

SELECT ID, 
       Name, 
       CityName AS [City Name]
FROM Employee INNER JOIN City
    ON Employee.CityID=City.CityID
WHERE CityName = "New York"

Кроме того, «Имя» является зарезервированным словом — его использование в качестве имени поля не рекомендуется.

person Remi Despres-Smyth    schedule 20.11.2010
comment
Большое спасибо за помощь. Теперь я это понимаю :D - person Teiv; 20.11.2010
comment
Я рад это слышать. Ваше здоровье. - person Remi Despres-Smyth; 20.11.2010

Еще одна вещь, которую нужно проверить, — на вкладке «Главная», если у вас есть какие-либо ручные сортировки или фильтры, активные для результатов запроса. На этой вкладке есть кнопка для удаления сортировки, которую вы не найдете в раскрывающемся меню для поля.

person Jacob Church    schedule 09.08.2018

Убедитесь, что вы не добавили запрос в поле Значение по умолчанию.

person Hasan Shouman    schedule 31.10.2020

попробуйте одинарные кавычки вместо двойных кавычек.

person Mohamad Alhamoud    schedule 20.11.2010
comment
Одинарные кавычки не являются частью синтаксиса MS Access SQL. - person Daniel L. VanDenBosch; 21.05.2018

Только что узнал об этой ошибке: один из ваших параметров недействителен.

Чтобы исправить это, мне пришлось изменить тип данных для идентификатора клиента с Large number на number, так как он содержит только несколько чисел. Это исправило мою проблему.

person Abdullah Rasoul    schedule 27.04.2021