/***************************************************************/
Type OrdreMySql Defaut TailleSegment 8 ConserverObjets
/* Objet : Type definissant un ordre pour My Sql. */
/****************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive :
EstInstanceDe : Type Lecture Public;
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'IOrdreSql. */
/*-------------------------------------------------------------*/
Prive :
NomOrdreSql : Caractere Lecture Public Trace;
SourceOrdreSql : Caractere Lecture Public;
TailleTableauParametres : Entier Lecture Public;
TempsDeGarde : Entier Lecture Public;
ConnexionSqlMere : Nul Ou IConnexionSql 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'IOrdreSql. */
/*-------------------------------------------------------------*/
Public :
Procedure DeclarerParametre(NomParametre : Caractere, T : Nul Ou Type, SorteDuParametre : SorteParametre=ParametreEntree, TailleMax : Entier=0);
Procedure EcrireParametre(NomParametre : Caractere, Valeur : Nul Ou Enumere);
Procedure EcrireParametre(NomParametre : Caractere, Valeur : Nul Ou Entier);
Procedure EcrireParametre(NomParametre : Caractere, Valeur : Nul Ou Reel);
Procedure EcrireParametre(NomParametre : Caractere, Valeur : Nul Ou Caractere);
Procedure EcrireParametre(NomParametre : Caractere, Valeur : Nul Ou Date);
Procedure EcrireParametre(NomParametre : Caractere, Valeur : Nul Ou Binaire);
Procedure LireParametre(NomParametre : Caractere, Valeur : Nul Ou Enumere Sortie);
Procedure LireParametre(NomParametre : Caractere, Valeur : Nul Ou Entier Sortie);
Procedure LireParametre(NomParametre : Caractere, Valeur : Nul Ou Reel Sortie);
Procedure LireParametre(NomParametre : Caractere, Valeur : Nul Ou Caractere Sortie);
Procedure LireParametre(NomParametre : Caractere, Valeur : Nul Ou Date Sortie);
Procedure LireParametre(NomParametre : Caractere, Valeur : Nul Ou Binaire Sortie);
Procedure PreparerSql();
Procedure ExecuterSql(NbEnregistrementsImpactes : Entier=? Sortie);
Fonction Optimiser(Invariant) EnumererParametres(Numero : Entier, TypeParametre : Nul Ou Type=? Sortie,
SorteDuParametre : SorteParametre=? Sortie) Retourner Nul Ou Caractere;
/*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Prive :
Destructeur(MettreEnAnteMemoire : Booleen) Retourner Booleen;
Fin Type
Le type OrdreMySql modélise un ordre pour une base de données relationnelles My Sql.
Le type OrdreMySql ne possède pas de constructeur.
La séquence d'actions sur un ordre Sql est la suivante :
Principal
/*******/
Variable
/******/
O : Nul Ou OrdreMySql;
O2 : Nul Ou OrdreMySql;
Debut
...
/* On prepare l'ordre Sql. */
O.Preparer();
...
/* On execute l'ordre Sql. */
O.Executer();
...
Si O==O2 Alors
/* Egalité entre deux ordres Sql. */
...
Fin Si
Si O!=O2 Alors
/* Inégalité entre deux ordres Sql. */
...
Fin Si
Fin Principal
- | - | - | - | - | - | - | - | - |