Angivelse af dobbelte anførselstegn omkring en identifikator i Oracle får Oracle til at behandle identifikatoren som case-sensitive i stedet for at bruge standarden for case-insensitivity. Hvis du opretter en tabel (eller en kolonne) med dobbelte anførselstegn omkring navnet, skal du altid henvise til identifikatoren med dobbelte anførselstegn og ved at angive sagen korrekt (med undtagelse af alle store bogstaver, hvor dobbelte anførselstegn er meningsløse ).
Under dækkene laver Oracle altid identifikation, der skelner mellem store og små bogstaver. Men det kaster altid identifikatorer, der ikke er dobbelt-citeret, til store bogstaver, før matchningen udføres. Hvis du sætter dobbelte anførselstegn omkring en identifikator, springer Oracle over castingen til store bogstaver.
Så hvis du gør noget som
CREATE TABLE my_table(
col1 number,
col2 number
)
du kan
SELECT * FROM my_table
SELECT * FROM MY_TABLE
SELECT * FROM My_Table
SELECT * FROM "MY_TABLE"
men noget lignende
SELECT * FROM "my_table"
vil mislykkes.
På den anden side, hvis du gør noget som
CREATE TABLE "my_other_table"(
col1 number,
col2 number
)
du kan ikke gøre
SELECT * FROM my_other_table
SELECT * FROM MY_OTHER_TABLE
SELECT * FROM My_Other_Table
SELECT * FROM "MY_OTHER_TABLE"
men dette
SELECT * FROM "my_other_table"
vil virke