0 / 0
Retourner à la version anglaise de la documentation
Erreur SQL0727N lors de l'interrogation des résultats de la vue dans Data Virtualization
Dernière mise à jour : 26 nov. 2024
Erreur SQL0727N lors de l'interrogation des résultats de la vue dans Data Virtualization

Vous pouvez rencontrer des erreurs SQL0727N si vous travaillez dans un environnement qui dépend fortement du contrôle d'accès basé sur des groupes d'utilisateurs.

Symptômes

Un message d'erreur SQL0727N est renvoyé lors de l'interrogation d'une vue.

SQL0727N  An error occurred during implicit system action type "3". 
Information returned for the error includes SQLCODE "-142", SQLSTATE "     " 
and message tokens "".  SQLSTATE=56098

Causes

Cette question peut se produire lorsque le contrôle d'accès et l'autorisation basés sur des groupes sont largement utilisés. Cette erreur se produit lorsque vous interrogez des vues créées sur des tables virtuelles si certaines autres conditions sont également vraies. En particulier, l'accès du créateur de la vue au tableau sous-jacent est basé sur l'appartenance à un groupe. Lorsque vous accédez à ces vues, l'accès de l'utilisateur à la vue et l'accès du créateur de la vue à la table sous-jacente sur laquelle la vue est basée sont vérifiés. Étant donné que l'accès du créateur de la vue à la table sous-jacente repose sur un fournisseur d'identité externe, la vue est marquée non valide alors qu'elle est en attente de revalidation.

Pour plus d'informations, voir Restrictions sur l'utilisation des privilèges de groupe lors de l'exécution d'instructions DDL ou de packages8.

Résolution du problème

  1. Si l'erreur est due à une vue marquée non valide, un utilisateur doté du rôle Admin peut résoudre la condition qui a provoqué la non-validité de la vue. Lorsque vous travaillez avec un accès basé sur des groupes, généralement un administrateur doit accorder des privilèges SELECT à l'utilisateur plutôt qu'à ou en plus du groupe.

    Vous pouvez également accorder un accès public à vos objets pour tous les rôles ou tous les utilisateurs de la Data Virtualization, puis restreindre l'accès à l'aide de règles de protection des données définies pour les groupes. Pour plus d'informations, reportez-vous à la section Gouverner les données virtuelles à l'aide de règles de protection des données dans la section Data Virtualization.

  2. Lorsque la mesure corrective est prise, l'exécution de SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS() sur cet objet revalide l'objet. L'accès ultérieur à l'objet aboutit ensuite. Cette procédure nécessite un utilisateur de Data Virtualization ayant un rôle d'administrateur pour exécuter les étapes nécessaires. L'exécution de la procédure doit suivre cette séquence.
CALL SYSHADOOP.BIG_SQL_SERVICE_MODE('ON');
CALL SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS(object-type, object_schema, object_name);
CALL SYSHADOOP.BIG_SQL_SERVICE_MODE('OFF');

Pour plus d'informations, voir les ressources suivantes :

  1. Procédure ADMIN_REVALIDATE_DB_OBJECTS-Valider les objets de base de données non valides
  2. auto_reval-Paramètre de configuration de revalidation et d'invalidation automatique
Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus