Posição de catálogo
A posição de um nome de catálogo em um identificador e como ele é separado do restante do identificador varia de fonte de dados para fonte de dados. Por exemplo, em uma fonte de dados Xbase, o nome do catálogo é um diretório e, no Microsoft Windows, é separado do nome da tabela (que é um nome de arquivo) por uma barra invertida (\). A ilustração a seguir demonstra essa condição.
Em uma fonte de dados do SQL Server, o catálogo é um banco de dados e é separado dos nomes de esquema e tabela por um período (.).
Posição do catálogo
Em uma fonte de dados Oracle, o catálogo também é o banco de dados, mas segue o nome da tabela e é separado dos nomes de esquema e tabela por um arroba (@).
Posição do catálogo
Para determinar o separador de catálogo e o local do nome do catálogo, um aplicativo chama SQLGetInfo com as opções SQL_CATALOG_NAME_SEPARATOR e SQL_CATALOG_LOCATION. Aplicativos interoperáveis devem construir identificadores de acordo com esses valores.
Ao citar identificadores que contêm mais de uma parte, os aplicativos devem ter cuidado para citar cada parte separadamente e não citar o caractere que separa os identificadores. Por exemplo, a instrução a seguir para selecionar todas as linhas e colunas de uma tabela Xbase cita os nomes de catálogo (\XBASE\SALES\CORP) e tabela (Parts.dbf), mas não o separador de catálogo (\):
SELECT * FROM "\XBASE\SALES\CORP"\"PARTS.DBF"
A instrução a seguir para selecionar todas as linhas e colunas de uma tabela Oracle cita os nomes de catálogo (Vendas), esquema (Corporativo) e tabela (Partes), mas não os separadores de catálogo (@) ou esquema (.):
SELECT * FROM "Corporate"."Parts"@"Sales"
Para obter informações sobre como citar identificadores, consulte a próxima seção, Identificadores Entre Aspas.