Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Das Einschließen von Spaltennamen in doppelte Anführungszeichen mit dem CREATE-Befehl in Oracle funktioniert nicht richtig. Wieso den?

Entgegen der landläufigen Meinung unterscheidet Oracle bei Spalten- und Tabellennamen zwischen Groß- und Kleinschreibung. Es konvertiert einfach alles standardmäßig in Großbuchstaben.

Wenn Sie jedoch Namen in doppelten Anführungszeichen verwenden, weisen Sie Oracle an, die Spalte genau in der von Ihnen angegebenen Schreibweise zu erstellen (Kleinbuchstaben im CREATE Aussage).

Da im SELECT -Anweisung verwenden Sie keine Anführungszeichen, die Namen werden in Großbuchstaben umgewandelt und sind daher nicht gleich den Kleinbuchstaben im CREATE Aussage.

Das sollte also funktionieren:

SELECT "prod_id", "product_name" FROM products;

Wenn Sie nicht wissen, wie Spalten- oder Tabellennamen angegeben werden, können Sie im Datenwörterbuch nachschlagen. Sie finden Spaltennamen in Kleinbuchstaben für Ihr product table, aber Tabellenname in Großbuchstaben, da er nicht in Anführungszeichen gesetzt wurde.