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;
Si le nom du propriétaire est précisé dans le paramète NomProprietaire, alors seules les tables, les vues ou les synonymes de ce propriétaire sont remontés.
La fin du nom du propriétaire peut être le caractère joker *. En ce cas, tous les propriétaires dont le nom correspond au modèle sont examinés.
Si le nom du catalogue est précisé dans le paramète NomCatalogue, alors seules les tables, les vues ou les synonymes de ce catalogue sont remontés.
La fin du nom du catalogue peut être le caractère joker *. En ce cas, tous les catalogues dont le nom correspond au modèle sont examinés.
Si le nom du schéma est précisé dans le paramète NomSchema, alors seules les tables, les vues ou les synonymes de ce schéma sont remontés.
La fin du nom du schéma peut être le caractère joker *. En ce cas, tous les schémas dont le nom correspond au modèle sont examinés.
Si le nom de la table est précisé dans le paramète NomTable, alors les tables, vues ou synonymes ci-dénommés sont remontés.
La fin du nom de la table peut être le caractère joker *. En ce cas, toutes les tables, les vues, les synonymes dont le nom correspond au modèle sont examinés.
Si la sorte des tables est précisée dans le paramète SorteTable, alors seules les tables, les vues ou les synonymes demandés sont remontés.
Si le paramètre TTR spécifiant la taille des tableaux pour les résultats a pour valeur 1, alors les enregistrements sont produits rang après rang.
Sinon les enregistrements sont produits par tableau dont la taille est donnée par TTR.
La gestion des tableaux est automatisée pour rendre le principe d'Array Fetch Processing transparent.
Après avoir exécuté la requête sur le dictionnaire de la base de données, Up ! Virtual Technical Machine rècupère tous les enregistrements produits et les conserve dans un espace de mémoire virtuelle dont la taille de l'anté-mémoire est définie par la valeur du paramètre ModeOptimisation. Pour plus de précisions, merci de se référer à la fiche ModeOptimisationFlux.
Cette méthode a deux avantages :
Le format d'un enregistrement résultat est le suivant :
Nom du champ | Type du champ | Description du champ |
NomProprietaire | Caractere | Nom du propriétaire. |
NomCatalogue | Caractere | Nom du catalogue. |
NomSchema | Caractere | Nom du schéma. |
NomTable | Caractere | Nom de la table, de la vue ou du synonyme. |
SorteTable | SorteTablesSupportees | Sorte de la table. |
Commentaire | Caractere | Commentaire associé à la table, à la vue ou au synonyme. |
Si la méthode échoue, alors l'exception ErreurOrdreSql est envoyée.
Si la méthode n'est pas supportée, alors le résultat est Nul.
Principal
/*******/
Variable
/******/
MaConnexion : Nul Ou IConnexionSql;
MonResultatSql : Nul Ou IResultatRequete;
Enregistrement : Nul Ou EnregistrementSql;
NomProprietaire : Nul Ou Caractere;
NomCatalogue : Nul Ou Caractere;
NomSchema : Nul Ou Caractere;
NomTable : Nul Ou Caractere;
SorteTable : SorteTablesSupportees;
Commentaire : Nul Ou Caractere;
Debut
...
Si MaConnexionSql.ListerTablesSupporte Alors
MonResultatSql=MaConnexionSql.ListerTables();
Pour Enregistrement=MonResultatSql.ParcoursAuDebut() JusquA MonResultatSql.DernierElement() Faire
Enregistrement.LireResultat("NomProprietaire", NomProprietaire);
Enregistrement.LireResultat("NomCatalogue", NomCatalogue);
Enregistrement.LireResultat("NomSchema", NomSchema);
Enregistrement.LireResultat("NomTable", NomTable);
Enregistrement.LireResultat("SorteTable", SorteTable);
Enregistrement.LireResultat("Commentaire", Commentaire);
...
Fin Pour
...
Fin Principal
ListerTablesSupporte pour connaître si le listage des tables est supporté.
- | - | - | - | - | - | - | - | - |