Source: http://www.lirmm.fr/~laurent/POLYTECH/IG4/PLSQL/exemplesPLSQL.pdf