Identyfikatory cytowane
W instrukcji SQL identyfikatory zawierające znaki specjalne lub słowa kluczowe muszą być ujęte w znaki cytatu identyfikatora ; identyfikatory ujęte w takie znaki są znane jako identyfikatory cytowane (znane również jako identyfikatory rozdzielane w standardzie SQL-92). Na przykład identyfikator zobowiązań jest używany w następującej instrukcji SELECT:
SELECT * FROM "Accounts Payable"
Przyczyną cytowania identyfikatorów jest umożliwienie przetwarzania instrukcji. Na przykład, jeśli w poprzednim oświadczeniu Accounts Payable nie zostały wymienione, analizator zakłada, że istnieją dwie tabele, Accounts i Payable, i zwraca błąd składniowy, że nie zostały rozdzielone przecinkiem. Znak cudzysłowu identyfikatora jest specyficzny dla sterownika i jest pobierany za pomocą opcji SQL_IDENTIFIER_QUOTE_CHAR w SQLGetInfo. Listy znaków specjalnych i słów kluczowych są pobierane za pomocą opcji SQL_SPECIAL_CHARACTERS i SQL_KEYWORDS w SQLGetInfo.
Aby zapewnić bezpieczeństwo, aplikacje współdziałające często cytują wszystkie identyfikatory, z wyjątkiem tych dla pseudokolumny, takich jak kolumna ROWID w oracle. sqlSpecialColumns zwraca listę pseudokolumnów. Ponadto, jeśli istnieją ograniczenia specyficzne dla aplikacji dotyczące tego, gdzie znaki specjalne mogą pojawiać się w nazwie obiektu, najlepiej jest, aby aplikacje współdziałały, aby nie używać znaków specjalnych w tych pozycjach.