Bonjour,
J'obtiens cette erreur lors de l'execution d'un requete delete :
Qu'est ce que cela signifie???Code:ORA-01036: numéro/nom de variable interdit
J'ai regardé sur google mais il ne me trouve que 2 liens fr qui ne m'aide guere
Version imprimable
Bonjour,
J'obtiens cette erreur lors de l'execution d'un requete delete :
Qu'est ce que cela signifie???Code:ORA-01036: numéro/nom de variable interdit
J'ai regardé sur google mais il ne me trouve que 2 liens fr qui ne m'aide guere
Peut-on avoir la requête ?
Sinon regarde ici
Le code client essaie de lier une valeur à une bind variable dans une instruction SQL et la bind variable en question n'est pas référencée dans le code SQL. Avec Oracle les bind variables en SQL sont toujours préfixées par ":" (et non par "@" comme dans SQL Server).Code:
1
2
3
4 $ oerr ora 1036 01036, 00000, "illegal variable name/number" // *Cause: Unable to find bind context on user side // *Action: Make sure that the variable being bound is in the sql statement.
Voici la requete :
Ma table proact a 2 champs :Code:DELETE FROM proact WHERE (projet = :original_projet) AND (projet NOT IN (SELECT projet FROM cra))
nom_projet | nom_activite
Ma table cra :
id | userid |date | nom_projet | nom_activite|
Pour un projet, il peux y avoir plusieurs activites.
Oui, j'ai bien remplacé tout mes @ ^^
Je ne répond pas à ta question, mais pense aux alias sinon il peut y avoir ambiguité sur "projet"Citation:
Envoyé par cnguyen
Code:DELETE FROM proact p1 WHERE (p1.projet = :original_projet) AND (p1.projet NOT IN (SELECT c1.projet FROM cra c1))
Vérifiez que le type de la bind variable est compatible avec celui de la colonne.
Le systeme des alias ne marche pas :(
Il me mets toujours
Je vais devenir ffouuuuuCode:ORA-01036: numéro/nom de variable interdit
Y'a un truc louche dans ta table CRA, c'est le champ "DATE" qui est un mot reservé Oracle. Je sais normalement ça ne devrais pas influencer ta requête mais bon... je te proposerais 2 essais juste pour faire avancer ton analyse:
- Essaye d'exécuter la requete dans un sqlplus classique sans passer par une variable bind
- Essaye d'exécuter la meme requête avec une copie de ta table CRA qui n'aurait pas de champ nommé "DATE"
bon courage...
J'ai le même problème...
Apparemment c'est l'erreur générique qui dit pas grand chose et qui peut venir d'une multitude de truc :?
Pour ma requête :
- J'ai essayé ma requête sous SQL Navigator et ça marche très bien.
- Mes paramètres ont bien des ":"
La solution que j'ai adoptée (et qui me plaît moyennement...) c'est de remplacer mes paramètres par la valeurs des variables directelment dans le code...
En attendant de trouver une explication rationelle
Bonjour à tous,
Cela s'est produit pour moi lorsque je liais une variable et qu'elle n'était pas dans la requête en cours.
cordialement,
junijo
J'ai eu le même problème : Il faut ajouter les paramètres Oracle dans l'ordre de la requête...