UpsQry.IOrdreSql.DeclarerParametre

Procedure DeclarerParametre(NomParametre : Caractere, T : Nul Ou Type, SorteDuParametre : SorteParametre=ParametreEntree, TailleMax : Entier=0);

Description

La méthode DeclarerParametre permet de déclarer le paramètre de nom NomParametre de type T de l'ordre Sql courant.

Les seuls types supportés sont :

La sorte du paramètre SorteDuParametre permet de spécifier s'il s'agit d'un paramètre d'entrée, de sortie ou d'entrée-sortie. Pour plus de précisions, merci de se référer à la fiche SorteParametre.

Pour les types Binaire et Caractere, il existe deux possibilités :

La limite de taille entre données courtes et données longues est laissée à la discrétion du programmeur, sachant que le principe du Bulk Processing n'est pas possible avec des paramètres de données longues.

La gestion des données courtes ou des données longues est effectuée automatiquement par Up ! Virtual Technical Machine.

Pour les types de données Date, Entier, Enumere et Reel, la valeur du paramètre TailleMax est ignorée.

Les paramètres du source de l'ordre Sql sont identifiés par des pseudo-variables. Ils doivent tous être déclarés explicitement par l'appel à cette méthode.

Si la méthode échoue, alors l'exception ErreurOrdreSql est envoyée.

Exemple

Principal
/*******/
Variable
/******/

Debut
...
MonOrdreSql=MaConnexionSql.CreerOrdreSql("SELECT ename, hiredate, empno, sal INTO ${NomEmploye}, ${DateEmbauche}, ${NumeroEmploye}, ${Salaire} FROM emp WHERE deptno=${NumeroDepartement};");
MonOrdreSql.DeclarerParametre("NumeroDepartement", Entier);
MonOrdreSql.DeclarerParametre("NomEmploye", Caractere, ParametreSortie, 20);
MonOrdreSql.DeclarerParametre("DateEmbauche", Date, ParametreSortie);
MonOrdreSql.DeclarerParametre("NumeroEmploye", Entier, ParametreSortie);
MonOrdreSql.DeclarerParametre("Salaire", Reel, ParametreSortie);
MonOrdreSql.PreparerSql();
MonOrdreSql.EcrireParametre("NumeroDepartement", 10);
MonOrdreSql.ExecuterSql();
MonOrdreSql.LireParametre("NomEmploye", NomEmploye);
MonOrdreSql.LireParametre("DateEmbauche", DateEmbauche);
MonOrdreSql.LireParametre("NumeroEmploye", NumeroEmploye);
MonOrdreSql.LireParametre("Salaire", Salaire);
...

Traduction

---------