Bonjour

Je crée une petite table immutable :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
CREATE IMMUTABLE TABLE t_imm (
    id  NUMBER   CONSTRAINT pk_imm PRIMARY KEY
)
NO DROP UNTIL 1 DAYS IDLE
NO DELETE UNTIL 16 DAYS AFTER INSERT;
Je tente ensuite d'insérer une ligne dedans :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
INSERT INTO t_imm (id) VALUES (1);
et là j'obtiens une erreur :
ORA-01858: Caractère non numérique trouvé à la place d'un caractère numérique
Si je crée la table sans le mot IMMUTABLE, pas d'erreur.


SQL> select banner_full from v$version;

BANNER_FULL
--------------------------------------------------------------------------------
Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0
Oracle 21 sur Windows.

Quelle erreur ai-je commise ?

Merci

Philippe