Les fonctions et procédures cataloguées système sont pratiques. Un de leurs avantages en particulier est que l'on peut les utiliser dans toute base de données sans avoir à les qualifier entièrement. Bien qu'elles résident dans la base de données Master, on peut appeler les procédures cataloguées et les fonctions système
Créer des fonctions système
depuis
toute base de données, et elles fonctionneront comme si elles se trouvaient dans
cette base de données.
En quoi cet avantage nous concerne-t-il ? De nombreux programmeurs SQL apprécient
le fait de pouvoir créer leurs propres procédures cataloguées système. Désormais,
on peut aussi créer ses propres fonctions système (c’est-à -dire des fonctions
que l’on peut invoquer depuis toute base de données, et que l’on n’a pas besoin
de qualifier avec la base de données source ni même le nom du propriétaire). NB
: Souvenez-vous que les UDF classiques doivent être qualifiées avec le nom du
propriétaire pour être résolues.
La création d’une UDF système se déroule en deux étapes. Premièrement, il faut
créer la fonction dans la base de données Master. Utilisez le préfixe fn_ pour
nommer la fonction. Après avoir créé cette dernière, utilisez la procédure cataloguée
système sp_changeobjectowner pour remplacer le nom du propriétaire de la fonction
par system_function_schema. Si on suit ces étapes, on peut appeler la fonction
depuis n’importe quelle base de données se trouvant sur la machine SQL Server.
Pour illustrer ce processus, réexaminons le premier exemple de fonction du présent
article, qui ressemblait à ceci :
CREATE FUNCTION DayOnly(@Date datetime)
RETURNS varchar(12)
AS
BEGIN
RETURN CONVERT(varchar(12), @Date, 101)
END
A présent, utilisons une commande DROP classique sur cette fonction :
DROP FUNCTION dbo.DayOnly
Puis, réexécutons le script CREATE FUNCTION, en substituant Master à la base de
données courante, le nom incluant le fn_ préfixe, et le propriétaire étant system_function_schema.
Le listing 9 présente le code correspondant. Cette fonction va ramener la date
courante, même si on se trouve dans une base de données différente de celle dans
laquelle on a créé la fonction, et que l’on n’a pas qualifié cette base de données
avec le propriétaire.
Téléchargez cette ressource
Guide de Threat Intelligence contextuelle
Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Les entreprises n’ont plus le luxe d’expérimenter l’IA
- Le changement, moteur d’engagement au travail
- Cloud 2026 : 5 tendances à anticiper pour les PME françaises
- Les DSI français face au défi de l’IA : ambitions élevées, marges de manœuvre limitées
Articles les + lus
Alliée ou menace ? Comment l’IA redessine le paysage cyber
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
À la une de la chaîne Tech
- Alliée ou menace ? Comment l’IA redessine le paysage cyber
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
