Thomas Kellerer <spam_eater@gmx.net> writes:
> As far as the SQL standard is concerned Postgres' databases do map to the term "catalog" .
> The only difference (or deviation from the standard) is, that they are no real "namespaces".
> In the SQL standard a fully qualified (table) name consists of three parts:
> catalog.schema.table
> however in Postgres the catalog (while it exists as a "thing") is not allowed to be used in a fully qualified name.
You can in fact use the database/catalog name within qualified names:
select * from mydb.someschema.sometable;
But it's purely for pro forma standards compliance. If you give a three-
part name and the first part isn't the current database, you'll just get
an error. In theory we might someday extend this to allow cross-database
accesses, but I wouldn't hold my breath waiting.
In any case, the fact that different DBMSes implement different subsets
of the spec isn't a bug, either ours or theirs.
regards, tom lane