Aller au contenu

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

QSYS2.SQL_CHECK_FUNCTION_USAGE

Contrôle d'un droit d'utilisation de fonction

Fonction scalaire qui vérifie si l'utilisateur courant est autorisé à un identifiant d'utilisation de fonction, comme QIBM_DB_SQLADM.

À quoi ça sert

SQL_CHECK_FUNCTION_USAGE reçoit en paramètre l'identifiant d'utilisation de fonction (FUNCTION_USAGE), par exemple QIBM_DB_SQLADM, et indique si l'utilisateur courant y a droit.

Les identifiants d'utilisation de fonction sont les droits fins gérés par IBM i en complément des droits spéciaux. On les consulte et on les modifie avec WRKFCNUSG et CHGFCNUSG. Cette fonction permet à un programme ou à une requête de tester le droit avant d'agir.

Elle est utile dans les outils d'administration SQL, qui peuvent ainsi masquer ou refuser une action selon le profil de l'appelant.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

VALUES QSYS2.SQL_CHECK_FUNCTION_USAGE('QIBM_DB_SQLADM')

Ce que l'IBM i a renvoyé le 01/10/2026 (1 ligne au plus) :

00001
0

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés. Les objets du schéma JOBISQL sont des objets de démonstration créés pour ce site.

L'exemple d'IBM

Vérifier si l'utilisateur courant est autorisé à l'identifiant d'utilisation de fonction QIBM_DB_SQLADM.

-- Description: Check whether the current user is authorized to the QIBM_DB_SQLADM 
     -- function usage identifier. 
    VALUES QSYS2.SQL_CHECK_FUNCTION_USAGE('QIBM_DB_SQLADM');

Bon à savoir

Le résultat vaut pour l'utilisateur qui exécute la requête, pas pour un autre profil : pour tester un autre utilisateur, il faut se connecter avec ce profil.

Paramètres

ParamètreTypePar défautSignification
FUNCTION_USAGE VARCHAR(30) obligatoire Utilisation de la fonction