Puede hacer esto (funciona para las versiones 12c o posteriores):
alter table your_table add id number generated always as identity;
Sin embargo, esto también genera nuevos valores para la columna, para futuras inserciones.
También sobre total row number , esto casi siempre debería generar valores de 1 a "número total de fila", pero de todos modos (no sé exactamente, cuándo esto puede funcionar incorrectamente), verifique esto, después de alter puedes hacer:select count(*), max(id) from your_table . los valores deben coincidir.