Quelle est la meilleure pratique pour faire des contraintes pour les arguments de fonction.
semblable à celui qui vérifie que l'enregistrement des nombres négatifs dans la fonction logarithme:Contraintes pour une fonction arguments dans PostgreSQL
SELECT log(-1, 1)
lancers francs erreur:
[2201E] ERROR: cannot take logarithm of a negative number
Jusqu'à présent, je trouve un moyen de le faire en utilisant PL/pgSQL l'intérieur d'un corps de la fonction, mais ça ne me semble pas une bonne solution.
Existe-t-il un moyen de créer des contraintes dans une déclaration de fonction?
Je voudrais voir quelque chose comme ceci: (ce code ne fonctionne pas)
CREATE OR REPLACE FUNCTION public.logloss(y_true BOOL NOTNULL, y_pred FLOAT NOTNULL)
Ou peut-être (cela ne fonctionne pas aussi bien)
CASE WHEN __condition__ RAISE EXCEPTION
ELSE __function__body
END