This page is part of the book SQL-99 Complete, Really, by Peter Gulutzan & Trudy Pelzer. The authors have graciously allowed us to reproduce the contents of the book here. Because the book is about the SQL-99 standard, the contents of this and other pages in the book may not directly apply to MariaDB. Use the navigation bar to navigate the book.
A <Catalog name> identifies a Catalog and is never explicitly qualified with the name of the SQL-server (or Cluster) it belongs to. The required syntax for a <Catalog name> is:
<Catalog name> ::= string
[NON-PORTABLE] A <Catalog name> is a <regular identifier> or <delimited
identifier> that is unique (for all Catalogs) within the Cluster it belongs to,
but is non-standard because the SQL Standard requires implementors to define
what a <Catalog name> may be.
[OCELOT Implementation] The OCELOT DBMS that comes with this book
requires a <Catalog name> to follow the rules for a directory name or a
subdirectory name on the operating system in use; generally it may
include [drive:] and [\upper-level name(s)] and \name. The <SQL-server
name> which implicitly qualifies an OCELOT <Catalog name> identifies the
Cluster that the Catalog belongs to, and is the same as the <SQL-server
name> argument of the most recent
CONNECT TO statement issued for the
SQL-session during which the Catalog was created.
Here is an example of a possible <Catalog name>:
If you want to restrict your code to Core SQL, don't use explicit <Catalog name>s.