Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Utilisez l’option disallow results from triggers pour contrôler si les déclencheurs retournent des jeux de résultats. Les déclencheurs qui retournent des jeux de résultats peuvent entraîner un comportement inattendu dans les applications qui ne sont pas conçues pour les utiliser.
Important
La fonctionnalité de renvoi des jeux de résultats à partir de déclencheurs sera éliminée dans une version ultérieure de SQL Server. Évitez de renvoyer des jeux de résultats provenant de déclencheurs dans un nouveau travail de développement et prévoyez la modification des applications qui y recourent actuellement. Pour empêcher les déclencheurs de retourner des jeux de résultats, attribuez à l’option disallow results from triggers la valeur 1. La valeur par défaut de l’option disallow results from triggers sera 1 dans une version future de SQL Server.
Lorsque la valeur est définie 1, l’option disallow results from triggers est définie sur ON. La valeur par défaut de cette option est 0, c’est-à-dire OFF (désactivé). Si cette option est définie sur 1 (ON), toute tentative de la part d'un déclencheur de retourner un ensemble de résultats échoue, et l’utilisateur obtient le message d’erreur suivant :
Msg 524, Level 16, State 1, Procedure <Procedure Name>, Line <Line#>
A trigger returned a resultset and the server option 'disallow_results_from_triggers' is true.
L’option disallow results from triggers est appliquée au niveau de l’instance SQL Server et détermine le comportement de tous les déclencheurs existants au sein de l’instance.
L’option disallow results from triggers est une option avancée. Si vous utilisez la sp_configure procédure stockée système pour modifier le paramètre, vous pouvez modifier l’interdiction des résultats des déclencheurs uniquement lorsqu’il show advanced options est défini 1sur . Le paramètre prend effet immédiatement (sans redémarrage du serveur).
Vous pouvez vérifier si l’option est correctement définie en utilisant le code Transact-SQL suivant :
-- Check the current value for the option
SELECT [name], value_in_use
FROM sys.configurations
WHERE [name] LIKE 'disallow results from triggers';
-- Set the disallow results from triggers option to 1. This option is an advanced option so that must be enabled first
EXECUTE sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
-- Set the disallow results from triggers option
EXECUTE sp_configure 'disallow results from triggers', 1;
EXECUTE sp_configure 'show advanced options', 0;
RECONFIGURE;
GO
-- Validate that the option is set to 1
SELECT [name], value_in_use
FROM sys.configurations
WHERE [name] LIKE 'disallow results from triggers';
GO