Obtener el ultimo ID de un campo autonumérico en Oracle es el problema. En MySQL existe la opcion auto_increment. En MSSQL es IDENTITY(1,1) (desde el registro 1, aumenta de uno en uno) Pero en Oracle no existen estas opciones de campo. Existen las secuencias pero no tengo ni idea como se implementan.
Investiga en San Google
Seguro que algo encontraras y sustituye la sentencia SQL por la conveniente en Oracle.
Siento no poder ayudarte mas :(
Un saludo