[TL;DR] La cosa più semplice da fare è non usare mai le doppie virgolette attorno ai nomi degli oggetti e lasciare che Oracle gestisca la distinzione tra maiuscole e minuscole nel modo predefinito.
Per impostazione predefinita, i database Oracle fanno distinzione tra maiuscole e minuscole; tuttavia, per impostazione predefinita, convertiranno anche tutto in maiuscolo in modo che la distinzione tra maiuscole e minuscole venga sottratta a te, l'utente.
CREATE TABLE tEsT ( column_name NUMBER );
Quindi:
SELECT COUNT(*) FROM test;
SELECT COUNT(*) FROM Test;
SELECT COUNT(*) FROM TEST;
SELECT COUNT(*) FROM tEsT;
Daranno tutti lo stesso output e:
SELECT * FROM USER_TABLES;
Uscite:
TABLE_NAME
----------
TEST
(Nota che il nome della tabella è in maiuscolo).
Se usi le virgolette doppie, Oracle rispetterà il tuo uso di maiuscole e minuscole nel nome della tabella:
CREATE TABLE "tEsT" ( column_name NUMBER );
e:
SELECT * FROM USER_TABLES;
Uscite:
TABLE_NAME
----------
TEST
tEsT
(Nota:ora ci sono due tabelle denominate TEST
e tEsT
e oracle ha rispettato la distinzione tra maiuscole e minuscole del secondo).