简体   繁体   中英

Why am I getting “Enter Parameter Value” when running my MS Access query?

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

I'm about selecting all employees who come New York but whenever I run the query, I always get a “Enter Parameter Value” box. How can I fix this?

This is because Access does not allow you to use field aliases in the query - it does not recognize [City Name] as a valid field name. Aliases are only used as field names in the result set. Rather, you need to use the entire expression.

As such, this query would probably be more easily defined in Access as:

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

Also, 'Name' is a reserved word - using it as a field name is not suggested.

Another thing to check is on the Home tab if you have any manual sorts or filters active on the query results. There is a button on that tab to remove sorting that you wont find on the dropdown menu for the field.

检查您是否没有向“默认值”字段添加查询。

尝试单引号而不是双引号。

Just found out regarding this error: "One of your parameter is invalid".

To fix this, I had to change my data type for customer ID from Large number to number as it does contain a few numbers only. This fixed my issue.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM