Parece que especificó los nombres de las columnas entre comillas en su DDL.
Oracle considera que los identificadores entre comillas distinguen entre mayúsculas y minúsculas, por lo que crear una tabla con un nombre de columna como "cuerpo" o "año" no resolverá el cuerpo o el año en su consulta, porque cuando omite las comillas, considera la variante en mayúsculas.
Así que cuando tienes esto:
create table driver_case (registration varchar2(60),
make varchar2(60),
model varchar2(60),
gvw number,
"year" number,
"body" varchar2(60));
y luego intenta hacer
select year, body from driver_case
luego Oracle intenta encontrar la columna "AÑO", "CUERPO" (recuerde, sin un identificador sin comillas se convierte a mayúsculas) que no es lo mismo que "año", "cuerpo" en su tabla.
¿Tus soluciones?
- No mencione los nombres de las columnas entre comillas en el DDL
- Si ignora el punto anterior, entonces debe mencione los nombres de las columnas entre comillas en todas sus declaraciones DML.
Demuestro el punto anterior en este SQL Fiddle