Udostępnij przez


Położenie wykazu

Położenie nazwy wykazu w identyfikatorze i sposób jego oddzielenia od pozostałej części identyfikatora różni się od źródła danych do źródła danych. Na przykład w źródle danych Xbase nazwa katalogu jest katalogiem, a w systemie Microsoft Windows jest oddzielona od nazwy tabeli (czyli nazwy pliku) ukośnikiem odwrotnym (\). Na poniższej ilustracji przedstawiono ten warunek.

Pozycja wykazu: Xbase

W źródle danych programu SQL Server wykaz jest bazą danych i jest oddzielony od nazw schematów i tabel według kropki (.).

Pozycja katalogu: SQL Server

W źródle danych Oracle wykaz jest również bazą danych, ale jest zgodny z nazwą tabeli i jest oddzielony od nazw schematów i tabel za pomocą znaku (@).

Pozycja wykazu: Oracle

Aby określić separator wykazu i lokalizację nazwy katalogu, aplikacja wywołuje polecenie SQLGetInfo z opcjami SQL_CATALOG_NAME_SEPARATOR i SQL_CATALOG_LOCATION. Aplikacje, które współdziałają, powinny tworzyć identyfikatory zgodnie z tymi wartościami.

Podczas cytowania identyfikatorów zawierających więcej niż jedną część aplikacje muszą być ostrożne, aby zadawać poszczególne części oddzielnie i nie cytować znaku oddzielającego identyfikatory. Na przykład następująca instrukcja do wybrania wszystkich wierszy i kolumn tabeli Xbase cudzysłowuje katalog (\XBASE\SALES\CORP) i nazwę tabeli (Parts.dbf), ale nie separator katalogu (\):

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

Poniższa instrukcja, aby wybrać wszystkie wiersze i kolumny tabeli Oracle, cytuje nazwy katalogu (Sales), schematu (Corporate) i tabeli (Parts), ale nie zawiera separatorów katalogu (@) ani schematu (.).

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

Aby uzyskać informacje na temat cytowania identyfikatorów, zobacz następną sekcję Cytowane Identyfikatory.