/***************************************************************/
Type ResultatRequeteSql Implemente Public : IResultatRequete(Nul Ou EnregistrementSql) Defaut TailleSegment 8 ConserverObjets
/* Objet : Type des resultats d'une requete Sql. */
/***************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive :
EstInstanceDe : Type Lecture Public;
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'IResultatRequete. */
/*-------------------------------------------------------------*/
Prive :
NbEnregistrements : Entier Lecture Public Trace;
/*-------------------------------------------------------------*/
/* Proprietes propres. */
/*-------------------------------------------------------------*/
Prive :
OrdreSqlPere : Nul Ou IOrdreSql Lecture Public;
/*-------------------------------------------------------------*/
/* Heritage des methodes d'Objet. */
/*-------------------------------------------------------------*/
Public :
Fonction Optimiser(Invariant) Identique(O : Nul Ou Objet) Retourner Nul Ou Booleen;
Procedure Convertir(O : Nul Ou Objet);
Fonction Optimiser(Invariant) CreeParLeServeur() Retourner Entier;
Fonction Optimiser(Invariant) CreeParLeProcessus() Retourner Entier;
Fonction Optimiser(Invariant) CreeDansLEntrepot() Retourner Entrepot;
Fonction Cloner(EntrepotCible : Nul Ou Entrepot=Nul, Profondeur : ModeClonage = ClonageObjetSeul) Retourner Nul Ou Objet;
Fonction LirePropriete(NomPropriete : Caractere) Retourner Nul Ou Objet;
Procedure EcrirePropriete(NomPropriete : Caractere, Valeur : Nul Ou Objet);
Fonction IncrementerDecrementerPropriete(NomPropriete : Nul Ou Caractere, Incrementer : Booleen, Prefixe : Booleen) Retourner Nul Ou Objet;
Procedure SupprimerPropriete(NomPropriete : Caractere);
Fonction Optimiser(Invariant) EnumererProprietes(NumeroPropriete : Entier, TypePropriete : Nul Ou Type=? Sortie, PeutEtreNul : Booleen=? Sortie, Aide : Nul Ou Caractere=? Sortie, NomEnumere : Nul Ou Caractere=? Sortie) Retourner Nul Ou Caractere;
Fonction Optimiser(Invariant) Adresse() Retourner Nul Ou Caractere;
Prive :
Fonction Exporter(E : Nul Ou IEchangeElementaire) Retourner Boolean;
Fonction Importer(E : Nul Ou IEchangeElementaire, EntrepotCible : Nul Ou Entrepot=Nul, EstFiltre : Booleen=Faux, V : Entier=0, R : Entier=0, C : Entier=0) Retourner Nul Ou Objet;
/*-------------------------------------------------------------*/
/* Heritage des methodes d'Iterateur. */
/*-------------------------------------------------------------*/
Public :
Fonction Optimiser(Invariant) ParcoursAuDebut(NumeroIterateur : Entier=0) Retourner Nul Ou TypeEnregistrement;
Fonction Optimiser(Invariant) ParcoursALaFin(NumeroIterateur : Entier=0) Retourner Nul Ou TypeEnregistrement;
Fonction Optimiser(Invariant) ParcoursAuMilieu(Position : Nul Ou Entier, NumeroIterateur : Entier=0) Retourner Nul Ou TypeEnregistrement;
Fonction Suivant(NumeroIterateur : Entier=0) Retourner Nul Ou TypeEnregistrement;
Fonction Precedent(NumeroIterateur : Entier=0) Retourner Nul Ou TypeEnregistrement;
Fonction Optimiser(Invariant) PremierElement() Retourner Nul Ou TypeEnregistrement;
Fonction Optimiser(Invariant) DernierElement() Retourner Nul Ou TypeEnregistrement;
Fonction NumeroElement(NumeroIterateur : Entier=0) Retourner Nul Ou Entier;
Fonction Element(NumeroIterateur : Entier=0) Retourner Nul Ou TypeEnregistrement;
Fonction AllouerIterateur() Retourner Entier;
Procedure LibererIterateur(NumeroIterateur : Entier);
/*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Prive :
Destructeur(MettreEnAnteMemoire : Booleen) Retourner Booleen;
Fin Type
Le type ResultatRequeteSql modélise un résultat d'une requête exprimée par un ordre de sélection en Structured Query Language (SQL).
Le type ResultatRequeteSql ne possède pas de constructeur.
Principal
/*******/
Variable
/******/
R : Nul Ou IResultatSql;
R2 : Nul Ou IResultatSql;
E : Nul Ou IEnregistrement;
Debut
/* Parcours des enregistrements. */
Pour E=R.ParcoursAuDebut() JusquA E.DernierElement() Faire
...
Fin Pour
Si R==R2 Alors
/* Egalité entre deux résultats de requete. */
...
Fin Si
Si R!=R2 Alors
/* Inégalité entre deux résultats de requete. */
...
Fin Si
Fin Principal
- | - | - | - | - | - | - | - | - |