ZESTAW NOEXEC (Transact-SQL)
Skompiluje każdej kwerendy ale nie nie wykonać go.
Składnia
SET NOEXEC { ON | OFF }
Uwagi
Gdy ustawienie NOEXEC jest włączone, SQL Server kompiluje każdej partia Transact-SQL instrukcji ale jest wykonać ich.Po NOEXEC USTAWIONA jest wyłączona, wszystkie instancje są wykonywane po kompilacji.
Wykonanie instrukcji w SQL Server ma dwie fazy: opracowanie i wykonanie.To ustawienie jest użyteczne w przypadku posiadające SQL Server Sprawdź poprawność nazwy składni i obiektów w Transact-SQL kodu podczas wykonywania.Jest także przydatny podczas debugowania sprawozdania, które ogólnie są częścią większego partia sprawozdania.
Ustawienie ustawianie NOEXEC jest zestaw na wykonać lub czas jednostkowy i nie analizować czas.
Uprawnienia
Wymaga członkostwa w public rolę.
Przykłady
W poniższym przykładzie użyto NOEXEC z prawidłowej kwerendy, kwerenda o nazwę obiektu, który jest nieprawidłowy i kwerendy z niepoprawną składnię.
USE AdventureWorks2008R2;
GO
PRINT 'Valid query';
GO
-- SET NOEXEC to ON.
SET NOEXEC ON;
GO
-- Inner join.
SELECT e.BusinessEntityID, e.JobTitle, v.Name
FROM HumanResources.Employee AS e
INNER JOIN Purchasing.PurchaseOrderHeader AS poh
ON e.BusinessEntityID = poh.EmployeeID
INNER JOIN Purchasing.Vendor AS v
ON poh.VendorID = v.BusinessEntityID;
GO
-- SET NOEXEC to OFF.
SET NOEXEC OFF;
GO
PRINT 'Invalid object name';
GO
-- SET NOEXEC to ON.
SET NOEXEC ON;
GO
-- Function name uses is a reserved keyword.
USE AdventureWorks2008R2;
GO
CREATE FUNCTION dbo.Values(@BusinessEntityID int)
RETURNS TABLE
AS
RETURN (SELECT PurchaseOrderID, TotalDue
FROM dbo.PurchaseOrderHeader
WHERE VendorID = @BusinessEntityID);
-- SET NOEXEC to OFF.
SET NOEXEC OFF;
GO
PRINT 'Invalid syntax';
GO
-- SET NOEXEC to ON.
SET NOEXEC ON;
GO
-- Built-in function incorrectly invoked.
SELECT *
FROM fn_helpcollations;
-- Reset SET NOEXEC to OFF.
SET NOEXEC OFF;
GO