Oracle
 sql >> Database >  >> RDS >> Oracle

Errore di ricezione - ORA-01858:è stato trovato un carattere non numerico in cui era previsto un valore numerico

L'errore che ricevi è perché stai eseguendo TO_DATE su una colonna che è già una data e stai utilizzando una maschera di formato diversa dal tuo nls_date_format parametro[1] o perché la colonna event_occurrence contiene dati che non sono un numero.

Devi a) correggere la tua query in modo che non utilizzi TO_DATE nella colonna della data e b) correggere i tuoi dati, se event_occurrence dovrebbe essere solo numeri.

E correggi il tipo di dati di quella colonna per assicurarti di poter memorizzare solo numeri.



[1] Cosa fa Oracle quando lo fai:TO_DATE(date_column, non_default_format_mask) è:TO_DATE(TO_CHAR(date_column, nls_date_format), non_default_format_mask)

In genere, il nls_date_format predefinito il parametro è impostato su dd-MON-yy , quindi nella tua query, è probabile che accada che la colonna della tua data venga convertita in una stringa nel formato gg-LUN-aa, quindi la stai riportando a una data utilizzando il formato MMGG. La stringa non è in questo formato, quindi viene visualizzato un errore.