Bonjour à tous,

Je vous expose un problème rencontré que je n'arrive pas à résoudre.

Je crée une vue Oracle (sous Oracle 11g) à partir d'une table avec une colonne que je suis obligé de convertir en numérique pour des raisons de compatibilité entre plusieurs applis donc je fais un :

CREATE VIEW ma_vue (v_col_num)
AS SELECT to_number(t_col_varchar) FROM ma_table WHERE EstNumerique(t_col_varchar)=1
EstNumerique étant une fonction me permettant d'exclure d'éventuelles données non numérique dans ma table d'origine

Jusque là tout va bien (la colonne v_col_num étant bien en format numérique)

Si je fais un :

SELECT * FROM ma_vue
pas de problème mes données sont OK

par contre dés que je fais un :

SELECT * FROM ma_vue WHERE v_col_num=99999
J'ai une erreur ORA-01722: Nombre non valide

Je précise que la syntaxe

SELECT * FROM ma_vue WHERE v_col_num='99999'
renvoit la même erreur.

Je ne vois vraiment pas où ça coince mais j'ai sûrement loupé quelque chose.

Merci d'avance pour votre aide.

NM