2016-01-22 1 views
0

J'ai une installation oracle express et, par défaut, elle est insensible à la casse (création de table/nom de clé). Je veux le changer pour sensible à la casse. Y a-t-il une configuration pour le faire?Comment rendre l'installation d'Oracle sensible à la casse?

+0

Pourquoi voulez-vous? Quel problème essayez-vous de résoudre? –

Répondre

4

Il n'y a pas de réglage, non. Cependant, dans n'importe quelle version d'Oracle, vous pouvez utiliser des identifiants sensibles à la casse en les encadrant par des guillemets.

create table "CamelCase" (
    "ColumnName1" integer 
); 

va créer une table CamelCase qui est sensible à la casse et une colonne ColumnName1 qui est sensible à la casse. Afin d'utiliser la colonne, cependant, chaque référence devra être entourée de guillemets doubles

SELECT "ColumnName1" 
    FROM "CamelCase" 

fonctionnerait. Cependant

SELECT ColumnName1 
    FROM CamelCase 

ne le feraient pas. L'utilisation d'identifiants sensibles à la casse est généralement une très mauvaise idée, donc je vous suggère fortement de ne pas le faire. C'est une option cependant.

1

Non, il n'y a pas de configuration pour cela. Vous ne pouvez pas rendre les identificateurs sensibles à la casse sans quoting them, mais Oracle déconseille d'utiliser des identificateurs entre guillemets:

Oracle ne recommande pas d'utiliser des identificateurs entre guillemets pour les noms d'objets de base de données. Ces identifiants sont acceptés par SQL * Plus, mais ils peuvent ne pas être valides lors de l'utilisation d'autres outils gérant des objets de base de données.

Et même alors, si vous avez un identificateur entre guillemets de toute façon, par exemple. "MY_TABLE", qui est traité comme un identificateur sans guillemets, vous pouvez donc toujours l'appeler my_table, ce qui peut ne pas être assez sensible à la casse pour vous. Tout cas mixte ou avec des caractères non valides doit toujours être mentionné, par exemple, par exemple. `select * from" My Table ", ce qui rend le code plus difficile à lire et à maintenir (à mon avis de toute façon).

Je recommande vraiment de ne pas le faire. Toute personne ayant à gérer votre schéma ou code ne vous en remerciera pas.