Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
disallow results from triggers Pomocí možnosti můžete řídit, jestli triggery vrací sady výsledků. Triggery, které vracejí sady výsledků, můžou způsobit neočekávané chování v aplikacích, které s nimi nejsou navržené.
Důležitý
Možnost vrácení sad výsledků z triggerů se odebere v budoucí verzi SQL Serveru. Vyhněte se vracení sad výsledků z triggerů v nové vývojové práci a naplánujte úpravu aplikací, které to v současné době dělají. Chcete-li zabránit triggerům v vrácení sad výsledků, změňte možnost zakázat výsledky z triggerů na hodnotu 1. Výchozí nastavení pro nepovolení výsledků z možností triggerů bude nastaveno na 1 v budoucí verzi SQL Serveru.
Pokud je tato možnost nastavená 1na hodnotu , je nastavena disallow results from triggers na ONhodnotu . Výchozí nastavení této možnosti je 0 (OFF). Pokud je tato možnost nastavená na 1 (ON), jakýkoli pokus triggeru o vrácení sady výsledků selže a uživatel obdrží následující chybovou zprávu:
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.
Tato disallow results from triggers možnost se použije na úrovni instance SQL Serveru a určuje chování všech existujících triggerů v instanci.
Tato disallow results from triggers možnost je rozšířená. Pokud ke změně nastavení používáte sp_configure systémovou uloženou proceduru, můžete změnit výsledky z aktivačních událostí pouze v případě, že show advanced options je nastavená hodnota 1. Nastavení se projeví okamžitě bez restartování serveru.
Pomocí následujícího Transact-SQL kódu můžete zkontrolovat, jestli je tato možnost správně nastavená:
-- 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
Související obsah
- REKONFIGURACE (Transact-SQL)
- možnosti konfigurace serveru
-
sp_configure (Transact-SQL)