2010-11-20 33 views
6
SELECT ID, 
     Name, 
     (SELECT CityName 
     FROM City 
     WHERE Employee.CityID = City.CityID) AS [City Name] 
FROM Employee 
WHERE [City Name] = "New York" 

Sto per selezionare tutti i dipendenti che vengono a New York ma ogni volta che eseguo la query, ottengo sempre una casella "Immettere valore parametro". Come posso risolvere questo?Perché viene visualizzato il messaggio "Immettere valore parametro" quando si esegue la query MS Access?

+0

Hai davvero una colonna chiamata [CityName] o è [Nome città]? – CarneyCode

risposta

7

Questo perché Accesso non consente di utilizzare alias di campo nella query, non riconosce [Nome città] come nome di campo valido. Gli alias vengono utilizzati solo come nomi di campo nel set di risultati. Piuttosto, è necessario utilizzare l'intera espressione.

Come tale, questa query sarebbe probabilmente più facilmente definito in Access come:

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

Inoltre, 'Nome' è una parola riservata - di usarlo come un nome di campo non è suggerito.

+0

Grazie mille per l'aiuto, ora lo capisco: D – Teiv

+0

Sono felice di sentirlo. –

0

provare singole virgolette invece di virgolette doppie.

+0

Ho provato ma non ha funzionato :( – Teiv

Problemi correlati