Symptômes
Prenons le scénario suivant :
- Il existe une fonction SQLCLR déclarée comme « déterministe », et la fonction peut être utilisée pour l’optimisation « remplacement par une constante ».
- Il existe un synonyme qui pointe vers la fonction SQLCLR.
- Une fonction table (TVF) fait référence à la fonction SQLCLR par le biais du synonyme .
Dans ce scénario, lorsqu’une application interroge ce tvf, une violation d’accès peut se produire et vous pouvez recevoir un message d’erreur semblable au suivant :
Remarque
- Message 0, niveau 11, état 0, ligne 14
- Une erreur grave s’est produite sur la commande actuelle. Les résultats, le cas échéant, doivent être ignorés.
En outre, un message d’erreur est enregistré dans le journal des erreurs SQL Server.
Résolution
Informations de Service Pack pour SQL Server
Ce problème est résolu dans le Service Pack suivant pour SQL Server :
Service Pack 2 pour SQL Server 2016
Service Pack 3 pour SQL Server 2014
À propos des Service Packs pour SQL Server :
Les Service Packs sont cumulatifs. Chaque nouvelle version contient tous les correctifs fournis dans les Service Packs précédents et tous les nouveaux correctifs. Nous vous recommandons d’appliquer le dernier Service Pack et la dernière mise à jour cumulative pour ce Service Pack. Il n'est donc pas nécessaire d'installer la version antérieure d'un Service Pack avant d'installer la dernière version disponible. Utilisez le tableau 1 de l’article suivant pour obtenir plus d’informations sur le dernier Service Pack et la dernière mise à jour cumulative.
État
Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».
Références
En savoir plus à propos de la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.