Fonctions utilisateur : appeler des fonctions simples <<< |
Appeler des fonctions utilisateurs pour les groupements | Traitement des arguments >>> |
23.2.2 Ajouter une nouvelle fonction définie par l'utilisateur ( UDF ) 23.2 Ajouter des fonctions à MySQL 23 Etendre MySQL Manuel de Référence MySQL 4.1 : Version Française . Fonctions utilisateur : appeler des fonctions simples ->Appeler des fonctions utilisateurs pour les groupements . Traitement des arguments . Valeurs de retour et gestion d'erreurs. . Compiler et installer des fonctions utilisateurs |
23.2.2.2 Appeler des fonctions utilisateurs pour les groupements
Voici une description des différentes fonctions que vous devez définir pour réaliser des calculs sur des regroupements, avec une fonction utilisateur : Notez que ce qui suit n'est pas demandé ou utilisé par MySQL 4.1.1. Vous pouvez conserver cette définition pour assurer la compatibilité entre MySQL 4.0 et MySQL 4.1.1.
Cette fonction n'est demandée que par MySQL 4.1.1 et plus récent :
Vous pouvez utiliser le pointeur error pour stocker un octet si quelque chose n'a pas fonctionné.
La fonction xxx() doit être déclarée de manière identique à celle d'un fonction utilisateur simple. Appel des UDF . Cette fonction est appelée lorsque toutes les lignes d'un groupe ont été traitées. Vous ne devez normalement pas accéder à la variable args ici, mais retourner votre valeur, à partir des valeurs du sommaire interne.Tous les traitements des arguments de xxx_reset() et xxx_add() doivent être fait d'une manière similaire à celle des fonctions UDF normales. Récupération des arguments . La gestion de la valeur retournée par xxx() doit être identique à celle d'une fonction utilisateur classique. Valeurs retournées et gestion d'erreurs .Le pointeur argument de is_null et error sont les mêmes pour tous les appels de xxx_reset() , xxx_add() et xxx() . Vous pouvez utiliser ces valeur pour vous rappeler si vous avez rencontré une erreur, ou si la fonction xxx() doit retourner NULL . Notez que vous ne devez pas stocker de chaîne dans *error ! C'est un conteneur d'un seul octet! is_null est remis à zéro pour chaque (avant d'appeler xxx_reset() . error n'est jamais remis à zéro.Si isnull ou error sont modifiés après xxx() , alors MySQL va retourner NULL comme résultat de la fonction de groupement. |
<< | Appeler des fonctions utilisateurs pour les groupements | >> |
Fonctions utilisateur : appeler des fonctions simples | Ajouter une nouvelle fonction définie par l'utilisateur ( UDF ) | Traitement des arguments |