/***************************************************************/
Type ConnexionSqlServer HeriteDe IConnexionSql Defaut TailleSegment 2 ConserverObjets
/* Objet : Interface correspondant aux connexions Sql Server. */
/***************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive :
EstInstanceDe : Type Lecture Public;
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'ITransaction. */
/*-------------------------------------------------------------*/
Prive :
NomTransaction : Caractere Lecture Public Trace;
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'IConnexionSql. */
/*-------------------------------------------------------------*/
Prive :
NomUtilisateur : Caractere Lecture Public Trace;
NomBaseDeDonnees : Caractere Lecture Public Trace;
NomServeur : Caractere Lecture Public Trace;
EstSynchronisee : Booleen Lecture Public;
FormatDeLaBaseDeDonnees : FormatsBaseDeDonneesSupportes Lecture Public;
TableauParametreSupporte : Booleen Lecture Public;
TableauResultatSupporte : Booleen Lecture Public;
ListerTablesSupporte : Booleen Lecture Public;
ListerClesPrimairesSupporte : Booleen Lecture Public;
ListerClesEtrangeresSupporte : Booleen Lecture Public;
ListerIndexSupporte : Booleen Lecture Public;
ListerProceduresSupporte : Booleen Lecture Public;
ListerCatalogueSupporte : Booleen Lecture Public;
ListerSchemasSupporte : Booleen 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'ITransaction. */
/*-------------------------------------------------------------*/
Public :
/*-------------------------------------------------------------*/
/* Heritage des methodes d'IConnexionSql. */
/*-------------------------------------------------------------*/
Fonction CreerOrdreSql(NomOrdreSql : Caractere, SourceOrdreSql : Caractere, TTR : Entier=1, TTP : Entier=1, TDG : Entier=0) Retourner Nul Ou IOrdreSql;
Procedure ExecuterBlocSql(NomBlocSql : Caractere, SourceBlocSql : Caractere, TDG : Entier=0);
Procedure ExecuterOrdreSql(NomOrdreSql : Caractere, SourceOrdreSql : Caractere, NbEnregistrementsImpactes : Entier=? Sortie, TDG : Entier=0);
Procedure Prendre();
Procedure Lacher();
Fonction Habilitation ListerTables(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, NomTable : Nul Ou Caractere=Nul, SorteDesTables : Nul Ou SorteTablesSupportees=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerColonnesTables(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, NomTable : Nul Ou Caractere=Nul, NomColonne : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerClesPrimaires(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, NomTable : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerClesEtrangeres(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, NomTable : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerIndex(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, NomTable : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerProcedures(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, NomProcedure : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerParametresProcedures(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, NomProcedure : Nul Ou Caractere=Nul, NomParametre : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerCatalogues(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
Fonction Habilitation ListerSchemas(NomProprietaire : Nul Ou Caractere=Nul, NomCatalogue : Nul Ou Caractere=Nul, NomSchema : Nul Ou Caractere=Nul, TTR : Entier=1, ModeOptimisation : ModeOptimisationFlux=Asynchrone4096) Retourner Nul Ou IResultatRequete;
/*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Public :
Constructeur Habilitation (U : Nul Ou Caractere=Nul, M : Nul Ou Caractere=Nul, S : Nul Ou Caractere=Nul, B : Nul Ou Caractere=Nul, ES : Booleen=Faux);
Prive :
Destructeur(MettreEnAnteMemoire : Booleen) Retourner Booleen;
Fin Type
Le type ConnexionSqlServer modélise une connexion vers une base de données relationnelles Sql Server de Microsoft.
Il peut exister simultanément plusieurs connexions vers Microsoft Sql Server pour une ou plusieurs tâches.
Le type ConnexionSqlServer possède un constructeur implicite dont les paramètres sont les suivants :
Selon les valeurs des paramètres UpsMss.NbConnexionsMin et UpsMss.NbConnexionsMax, la connexion physique peut être issue d'un recyclage à son ouverture ou recyclée à sa fermeture si l'utilisateur, le mot de passe et la base de données sont identiques à ceux donnés par le paramètre UpsMss.Connexion.
Type TA Transactionnel Defaut
/***************************/
C : Caractere;
Constructeur();
Fin Type
Principal
/*******/
Variable
T : TA;
C : Nul Ou ConnexionSqlServer;
C2 : Nul Ou ConnexionSqlServer;
Debut
T.C="coucou";
C.Valider();
/* On valide la modification. */
Ecran.Ecrire(T.C+"\n");
T.C="hello";
C.Invalider();
/* On invalide la modification. */
Ecran.Ecrire(T.C+"\n");
Si C==C2 Alors
/* Egalité entre deux connexions. */
...
Fin Si
Si C!=C2 Alors
/* Inégalité entre deux connexions. */
...
Fin Si
Fin Principal
- | - | - | - | - | - | - | - | - |