Oczywiście jest pomieszanie imion. "core sample"
to nie to samo co CORE_SAMPLE
. Trudno powiedzieć więcej na podstawie tego, jak niewiele informacji tutaj mamy.
Nie cytowane identyfikatory są zapisywane na małe litery w PostgreSQL, więc CORE_SAMPLE
, Core_Sample
lub core_sample
w końcu są identyczne.
Ale gdy umieścisz identyfikatory w podwójnych cudzysłowach, nazwa zostanie zachowana. W ten sposób możesz mieć niedozwolone znaki, takie jak spacja w nazwie:"core sample"
. Moją stałą radą jest trzymanie się od tego z daleka i używanie legalnych identyfikatorów pisanych małymi literami wyłącznie w PostgreSQL.
Komunikat o błędzie informuje, że nie ma tabeli o nazwie "core sample"
, przynajmniej nie w bazie danych, z którą się łączyłeś w żadnym ze schematów wymienionych w search_path
.
Ale wyświetlone zapytanie odnosi się do tabeli o nazwie CORE_SAMPLE
który nie pasuje do tego komunikatu o błędzie.