oracle standard SQL
Oracle - Respecter les standards SQL avec Oracle
Dans Oracle, le code SQL ne respecte pas toujours les normes internationales SQL. Par exemple, la requête suivante retourne 1 ce qui signifie que la condition WHERE est vraie, autrement dit Oracle donne la valeur NULL à une chaîne de caractères vide :
SQL> select 1 from dual where '' is null; 1 ---------- 1
Il est possible de changer un paramètre pour obliger le client à utiliser des requêtes standards :
SQL> alter session set flagger=full; Session altered. SQL> select 1 from dual where '' is null; select 1 from dual where '' is null * ERROR at line 1: ORA-00097: use of Oracle SQL feature not in SQL92 Full Level ORA-06550: line 2, column 28: PLS-01466: Null strings are not allowed ORA-06550: line 2, column 26: PLS-01455: The predicates IS NULL and IS NOT NULL are defined only for column specifications