2010-01-04 6 views
1

Je dois formater l'instruction SQL pour Oracle Db. J'ai une déclaration SQL et je ne veux pas changer le cas. Pour Eg.Oracle sensible à la casse Format SQL

CREATE TABLE DPAuditTrailDetail 
(
    ID    NUMBER (19, 0) DEFAULT 0 NOT NULL, 
    AuditTrail  NUMBER (19, 0) DEFAULT 0 NOT NULL, 
    sysObjectField NUMBER (19, 0) DEFAULT 0 NOT NULL, 
    OldValue   NCLOB DEFAULT NULL , 
    NewValue   NCLOB DEFAULT '' NOT NULL, 
    Referenced  NUMBER (19, 0) DEFAULT NULL 
); 

Je crois, pour créer la table avec ce nom de la table et les noms de colonnes dans l'oracle, je vais devoir ajouter des guillemets doubles (« ») pour chaque nom. J'ai un gros script et j'aimerais le faire aussi vite que possible.

Veuillez suggérer un moyen rapide de le faire.

Merci.

+0

Quelle est la question? – Welbog

+0

Votre question n'est pas claire quant à ce que vous voulez faire. – abmv

+0

ne le faites pas. Premièrement, expliquez-moi pourquoi vous insistez pour utiliser des chaînes entre guillemets comme noms de tables/colonnes. –

Répondre

1

Si vous devez vraiment utiliser des noms de tables/colonnes sensibles à la casse, le seul moyen consiste à ajouter des guillemets doubles aux noms de table/colonne. Mais comme l'ont dit les commentateurs, il n'est pas recommandé d'utiliser des noms sensibles à la casse.

2

Utilisez simplement l'instruction CREATE telle quelle. Les tables seront créées pour que tout ce qui suit fonctionne très bien:

select AuditTrail from DPAuditTrailDetail where ID=1; 

select AUDITTRAIL from DPAUDITTRAILDETAIL where ID=1; 

select aUdITtraIL from dpaudittraildetaiL where id=1; 

requêtes Oracle sont insensibles à la casse par défaut et votre vie (et celle de ceux qui maintiennent votre code lorsque vous êtes parti) sera plus facile si vous respectez ce défaut.

+0

@ hhk999: Ceci est correct, si vous omettez les guillemets et que le mappeur OR tente d'exécuter "DROP TABLE DPAuditTrailDetail "ça va réussir. – wweicker

Questions connexes