Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Colocar nomes de coluna dentro de aspas duplas com o comando CREATE no Oracle não funciona corretamente. Por quê?


Contra a crença comum, o Oracle diferencia maiúsculas de minúsculas em nomes de colunas e tabelas. Ele apenas converte tudo para maiúsculas por padrão.

Mas se você usar nomes entre aspas duplas, você diz ao Oracle para criar a coluna na grafia exata que você forneceu (minúsculas no CREATE declaração).

Já que no SELECT instrução, você não usa aspas, os nomes são convertidos em maiúsculas e, portanto, não são iguais aos nomes em minúsculas no CREATE declaração.

Então isso deve funcionar:
SELECT "prod_id", "product_name" FROM products;

Se você não souber como os nomes das colunas ou tabelas são especificados, você pode procurar no dicionário de dados. Você encontrará nomes de colunas em minúsculas para seu product table, mas o nome da tabela em maiúsculas, pois não foi citado.