Você pode fazer isso (funciona para as versões 12c ou posteriores):
alter table your_table add id number generated always as identity;
Porém, isso também gera novos valores para coluna, para futuras inserções.
Também sobre
total row number , isso quase sempre deve gerar valores de 1 a "total row number", mas de qualquer forma (não sei exatamente, quando isso pode funcionar incorretamente), verifique isso, após alter você pode fazer:select count(*), max(id) from your_table . os valores devem coincidir.