J'essaie de comprendre pourquoi, sur certains systèmes, j'obtiens un message d'erreur de nombre invalide lorsque j'essaie de sélectionner une valeur d'une colonne varchar2 alors que sur d'autres systèmes, je ne comprends pas l'erreur tout en faisant exactement la même chose.select from varchar2 colonne avec une valeur numérique donne parfois une erreur de numéro invalide
Le tableau est quelque chose comme ceci:
ID Column_1 Column_2
1 V text
2 D 1
3 D 2
4 D 3
et une requête:
select ID
from table
where column_1='D'
and column_2 = :some_number_value
: some_number_value est toujours numérique, mais peut être nul.
Nous avons fixé la requête:
select ID
from table
where column_1='D'
and column_2 = to_char(:some_number_value)
Cette requête originale fonctionne bien sur la plupart des systèmes, mais sur certains systèmes donne une erreur « numéro non valide ». La question est pourquoi? Pourquoi cela fonctionne-t-il sur la plupart des systèmes et pas sur certains?
Salut merci, ça l'explique. La requête avec la valeur null ne doit renvoyer aucune ligne, cela fonctionne correctement de cette façon. Bien sûr, nous pouvons mettre du code pour que la requête ne soit pas exécutée quand: some_number_value est null. – Rene