Condividi tramite


La posizione del catalogo

La posizione di un nome di catalogo in un identificatore e il modo in cui è separato dal resto dell'identificatore varia da fonte dati a fonte dati. Ad esempio, in un'origine dati Xbase, il nome del catalogo è una directory e, in Microsoft Windows, è separato dal nome del file (che funge da nome della tabella) da una barra rovesciata (\). La figura seguente illustra questa condizione.

posizione catalogo: Xbase

In un'origine dati SQL Server, il catalogo è un database ed è separato dai nomi di schema e tabella da un punto (.).

Posizione del catalogo: SQL Server

In un'origine dati Oracle, il catalogo è anche il database, ma segue il nome della tabella ed è separato dai nomi di schema e tabella con un simbolo (@).

Posizione catalogo: Oracle

Per determinare il separatore di catalogo e la posizione del nome del catalogo, un'applicazione chiama SQLGetInfo con le opzioni SQL_CATALOG_NAME_SEPARATOR e SQL_CATALOG_LOCATION. Le applicazioni interoperabili devono costruire identificatori in base a questi valori.

Quando si citano identificatori che contengono più di una parte, le applicazioni devono prestare attenzione a citare ciascuna parte separatamente e a non citare il carattere che separa gli identificatori. Ad esempio, l'istruzione seguente per selezionare tutte le righe e le colonne di una tabella Xbase riporta il catalogo (\XBASE\SALES\CORP) e il nome della tabella (Parts.dbf), ma non il separatore del catalogo (\):

SELECT * FROM "\XBASE\SALES\CORP"\"PARTS.DBF"  

L'istruzione seguente per selezionare tutte le righe e le colonne di una tabella Oracle include tra virgolette i nomi del catalogo (Sales), dello schema (Corporate) e della tabella (Parts), ma non i separatori del catalogo (@) o dello schema (.).

SELECT * FROM "Corporate"."Parts"@"Sales"  

Per informazioni sugli identificatori tra virgolette, vedere la sezione successiva, Identificatori tra virgolette.