Deve ser possível usar uma biblioteca como Language Dectection for Java e amarre-o com seu PL/SQL.
Provavelmente será mais eficiente usar SQL para fazer Bayesian ingênuo filtragem e usar perfis de idioma derivados, por exemplo. da Wikipedia (eles estão organizados aqui ).
Estes são apenas indicadores, não uma solução completa conforme solicitado para a recompensa, mas devem ajudar os caçadores de recompensas.