Aller au contenu

Service SQL IBM i (AS/400) · Fonction table

QSYS2.ANALYZE_CATALOG

Analyser la cohérence du catalogue

Détecte les incohérences du catalogue de base de données (références croisées, contraintes) pour une bibliothèque, avec gravité et détail de chaque anomalie.

À quoi ça sert

Cette fonction de table analyse le catalogue de la base de données et renvoie une ligne par anomalie : bibliothèque, objet, type, gravité (SEVERITY), catégorie, description et détail, ainsi que la bibliothèque et le nom du catalogue concerné.

Le paramètre OPTION (défaut 'DBXREF') choisit l'analyse, et LIBRARY_NAME (défaut '*ALL') limite le contrôle à une bibliothèque. On l'utilise après un incident, une restauration ou une migration pour vérifier que les contraintes et les références sont saines.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

SELECT * FROM TABLE(QSYS2.ANALYZE_CATALOG(OPTION => 'DBXREF', LIBRARY_NAME => 'JOBISQL')) X

La requête n'a renvoyé aucune ligne sur notre IBM i de test.

L'exemple d'IBM

Déterminer s'il existe des incohérences de contraintes pour les fichiers de la bibliothèque APPLIB.

-- Description: Determine if there are any constraint inconsistencies  -- for files in library APPLIB. 
 SELECT * FROM TABLE(QSYS2.ANALYZE_CATALOG(OPTION => 'DBXREF', 
                                          LIBRARY_NAME =>'APPLIB'));

Bon à savoir

Sur '*ALL', l'analyse parcourt toutes les bibliothèques et peut être longue. Limitez-vous à la bibliothèque qui vous intéresse.

Paramètres

ParamètreTypePar défautSignification
OPTION VARCHAR(13) 'DBXREF' Option
LIBRARY_NAME VARCHAR(10) '*ALL' Nom de la bibliothèque

Colonnes renvoyées (9)

Afficher les 9 colonnes
ColonneTypeSignification
LIBRARY_NAME VARCHAR(10) Nom de la bibliothèque
OBJECT_NAME VARCHAR(10) Nom de l'objet
OBJECT_TYPE VARCHAR(30) Type de l'objet
SEVERITY VARCHAR(7) Gravité
CATEGORY VARCHAR(20) Catégorie
DESCRIPTION VARCHAR(250) Description
DETAIL VARCHAR(128) Détail
CATALOG_LIBRARY VARCHAR(10) Bibliothèque du catalogue
CATALOG_NAME VARCHAR(10) Nom du catalogue