Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.3k views
in Technique[技术] by (71.8m points)

postgresql - Relation does not exist

I have just connected Powerbuilder with PostgreSQL through ODBC, but something goes wrong when I'm trying to create a datawindow! I can't understand where is the problem. I will be so grateful to receive any answers.

The error:

Cannot create DataWindow

SQLSTATE=42P01
ERROR:relation "core sample" does not exist;

No query has been executed with that handle

SELECT CORE_SAMPLE.N_CORE,      CORE_SAMPLE.DEPTH,

CORE_SAMPLE.WELL_ID_WELL,   CORE_SAMPLE.ID_CORE FROM 

CORE_SAM'
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Obviously, there is a mixup with names. "core sample" is not the same as CORE_SAMPLE. Hard to say more, based on what little information we have here.

Unquoted identifiers are cast to lower case in PostgreSQL, so CORE_SAMPLE, Core_Sample or core_sample end up to be identical.
But once you enclose identifiers in double quotes, the name is preserved as is. This way you can have otherwise illegal characters like a space in the name: "core sample". My standing advise is to stay away form that and use legal, lower case identifiers exclusively with PostgreSQL.

The error message tells you there is no table named "core sample", at least not in the database you connected to in any of the schemas listed in the search_path.
But the displayed query refers to a table named CORE_SAMPLE which does not match this error message.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...