ORA-01008 : toutes les variables ne sont pas liées
Bonjour,
Nota : je suis débutant sur bdd Oracle.
Le contexte :
J'ai récupéré une "application".
En gros, c'est une base Oracle relais qui récupère des données d'applications et qui fourni d'autres applications. Le tout grace à des .bat et des .sql qui utilisent CFT, sqlldr et sqlplus. Une centaine de tables, autant de vues, une quarantaine de .bat et le double de .SQL. Cool...:aie:
Ah, j'oubliais, le précédent développeur à décider qu'il n'y aurait pas ni identifiants ni clés primaires de définies dans les tables...
On peut visualiser certaines données grace à une application web créé par CodeOnTime (http://codeontime.com/).Certaines tables sont même en écriture !
Ah...oui, c'est bien, mais la MOA vient de s'apercevoir que l'on peut faire des doublons :aie:.
Je doit donc faire une "business rule" en SQL dans CodeOnTime avant l'insertion/modification pour éviter les doublons. La doc de COT ne connait quasiment que SQL Server (moi aussi d'ailleurs !).
Donc le script de test avant insertion/modification est:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
begin
declare Existe Decimal;
begin
select count(*) into :Existe from MaTable
where ENTITE_PC= :ENTITE_PC and SETID = :SETID;
IF :Existe > 0 then
:BusinessRules_PreventDefault :=1;
:Result_Focus :='Le Machin ' + :ENTITE_PC + ' ' + :SETID +' existe déjà.';
:Result_ShowViewMessage := 'Erreur lors de lexécution de la commande ' + :Arguments_CommandName ;
End if;
end;
end; |
:ENTITE_PC et :SETID correpondent au données que je veux Ajouter/Modifier
:BusinessRules_PreventDefault, :Result_Focus, :Result_ShowViewMessage et :Arguments_CommandName sont propres à COT et indique , s'il y eu une erreur; les messages d'erreur ainsi que le type de "command" (insert ou update).
Ca fonctionne dans SQLDevelopper, mais dans l'application WEB j'ai cette erreur :
Citation:
ORA-01008: toutes les variables ne sont pas liées
J'ai tracé le code généré par COT dans Visual Studio et les variables sont bien envoyées en paramétres à la requête.
Si quelqu'un pouvait m'aiguiller, mes deux collegues connaissnt Oracle sont en congés jusqu'a fin août, et je doit faire une MEP le 2 septembre :calim2: