3
我正在關注Patrick LeBlanc編寫的Microsoft SQL Server 2012一書。當我使用書中的示例創建內聯表值函數時,我在本文的標題中遇到了錯誤。我嘗試通過右鍵單擊「函數」 - >「新建」 - >內聯表值函數來創建代碼,然後更改代碼。我還寫了書中的全部代碼。正如我所看到的,我在CREATE FUNCTION語句之前使用了GO語句。代碼看起來像這樣,任何想法是什麼造成這個?'CREATE FUNCTION'必須是批處理中唯一的語句
USE AdventureWorks2016CTP3;
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION dbo.GetOrderDetails
(
@SalesOrderID int
)
RETURNS TABLE
AS
RETURN
(
SELECT
sod.SalesOrderID,
sod.SalesOrderDetailID,
sod.CarrierTrackingNumber
p.Name AS ProductName,
so.Description
FROM Sales.SalesOrderDetail AS sod
INNER JOIN Porduction.Product AS p
ON sod.ProductID = p.ProductID
INNER JOIN Sales.SpecialOffer AS so
ON sod.SpecialOfferID = so.SpecialOfferID
WHERE
sod.SalesOrderID = @SalesOrderID
)
GO
這裏有一個逗號缺少'sod.CarrierTrackingNumber,'除了一切看起來不錯 –
只需突出顯示'CREATE FUNCTION'直到GO在底部,然後執行。 – Eric