Partager via


Position du catalogue

La position d'un nom de catalogue dans un identifiant et la façon dont elle est séparée du reste de l'identifiant varie de la source de données à la source de données. Par exemple, dans une source de données Xbase, le nom du catalogue est un annuaire et, dans Microsoft Windows, il est séparé du nom de la table (qui est un nom de fichier) par une barre oblique inverse (\). L'illustration suivante montre cette situation.

Catalog postion: Xbase

Dans une source de données SQL Server, le catalogue est une base de données. De plus, il est séparé des noms de schéma et de table par un point (.).

Catalog postion: SQL Server

Dans une source de données Oracle, le catalogue est également la base de données. Toutefois, il suit le nom de la table et est séparé du schéma et des noms de table par un signe arobase (@).

Catalog postion: Oracle

Pour déterminer le séparateur de catalogue et l'emplacement du nom de catalogue, une application appelle SQLGetInfo avec les options SQL_CATALOG_NAME_SEPARATOR et SQL_CATALOG_LOCATION. Les applications interopérables doivent construire des identificateurs en fonction de ces valeurs.

Lorsque les identifiants mis entre guillemets renferment plus d'une partie, les applications doivent veiller à indiquer chaque partie séparément et à ne pas mettre entre guillemets le caractère qui sépare les identifiants. Par exemple, l'instruction ci-dessous, qui permet de sélectionner toutes les lignes et colonnes d'une table Xbase, indique le nom du catalogue (\XBASE\SALES\CORP) et de la table (Parts.dbf). En revanche, elle n'indique pas le séparateur de catalogue (\N) :

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

L'instruction ci-dessous visant à sélectionner toutes les lignes et colonnes d'une table Oracle indique les noms du catalogue (Sales), du schéma (Corporate) et de la table (Parts). Toutefois, les séparateurs de catalogue (@) et de schéma (.) ne sont pas pris en compte :

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

Pour plus d'informations sur les identificateurs entre guillemets, consultez la section suivante, Identificateurs entre guillemets.