PostgreSQL “Column non esiste” ma in realtà lo fa

Sto scrivendo un’applicazione Java per creare ed eseguire automaticamente query SQL. Per molte tabelle il mio codice funziona bene, ma su un certo tavolo rimane bloccato lanciando la seguente eccezione:

 Exception in thread "main" org.postgresql.util.PSQLException: ERROR: column "continent" does not exist Hint: Perhaps you meant to reference the column "countries.Continent". Position: 8 

La query che è stata eseguita è la seguente:

 SELECT Continent FROM network.countries WHERE Continent IS NOT NULL AND Continent  '' LIMIT 5 

Questo essenzialmente restituisce 5 valori non vuoti dalla colonna.

Non capisco perché sto ricevendo l’errore “la colonna non esiste” quando lo fa chiaramente in pgAdmin 4 . Vedo che c’è uno schema con il nome Network che contiene i countries della tabella e quella tabella ha una colonna chiamata Continent proprio come previsto.

Dal momento che tutti i nomi di colonna, schema e tabella sono recuperati dall’applicazione stessa, non penso ci sia stato un errore di ortografia o semantica, quindi perché PostgreSQL causa problemi indipendentemente? Esecuzione della query in pgAdmin4, né utilizzo dei countries.Continent suggeriti. Continente funziona.

    La mia versione di PostgreSQL è la più recente ad oggi:

     $ psql --version psql (PostgreSQL) 9.6.1 

    Come posso eseguire correttamente la query?

    Prova a metterlo tra virgolette – come "Continent" nella query:

     SELECT "Continent" FROM network.countries ... 

    Lavorando con l’ambiente SQLAlchemy, ho ricevuto questo errore con SQL come questo,

      db.session.execute( text('SELECT name,type,ST_Area(geom) FROM buildings WHERE type == "plaza" ')) 

    ERRORE: la colonna “plaza” non esiste

    Bene, ho cambiato == per =, l’errore persiste ancora, quindi ho scambiato le virgolette, come segue. Ha funzionato. Strano!

     .... text("SELECT name,type,ST_Area(geom) FROM buildings WHERE type = 'plaza' "))