set noexec (Transact-sql)

Her sorgu derler ama çalıştırmak değil.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

SET NOEXEC { ON | OFF }

Açıklamalar

set noexec on olduğunda SQL Serverher toplu derler Transact-SQLdeyimleri ama onları yürütmüyor. set noexec kapalı olduğunda, tüm toplu derleme sonra yürütülür.

Deyimleri yürütme SQL Serveriki aşama vardır: derleme ve çalıştırma. Bu ayar yararlı olması için SQL Serversözdizimi ve nesne adları doğrulamak Transact-SQLkod çalıştırırken. Genelde ifadelerini büyük toplu bir parçası olacağını deyimleri hata ayıklama için yararlıdır.

set noexec ayarı ayarlanır yürütme veya zaman değil ayrıştırma saati ve çalıştırın.

İzinler

Üyelik publicrolü.

Örnekler

Aşağıdaki örnek NOEXECgeçerli bir sorgu, sorgu geçersiz nesne adı ile ve bir sorgu hatalı sözdizimi ile.

USE AdventureWorks2012;
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 AdventureWorks2012;
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

USE AdventureWorks2012;
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 AdventureWorks2012;
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

Ayrıca bkz.

Başvuru

Deyimiyle (Transact-sql) bırak

set showplan_text (Transact-sql)

set showplan_text (Transact-sql)