我有一些數據表。其中一列被命名爲「類別」,幷包含SKI或SB等數據。如何驗證列? SQL
我有一個函數來驗證和一個過程。 我只需要獲得類別SKI的列。我知道還有其他簡單的方法來實現這個......但我有一個任務,這就是爲什麼我使用一個函數和一個過程。
我在做什麼錯?
CREATE FUNCTION validateProducts(@productCategory NVARCHAR(50))
RETURNS BIT AS
BEGIN
DECLARE @returnValue BIT
IF(@productCategory LIKE 'SKI')
SET @returnValue = 1 --valid
ELSE
SET @returnValue = 0 --invalid
RETURN @returnValue
END
GO
CREATE PROCEDURE usp_ProductsRead(@productType NVARCHAR(50)) AS
BEGIN
DECLARE @productCategory NVARCHAR(50)
SET @[email protected]
SELECT Category, Model
FROM PRODUCTS
WHERE dbo.validateProducts(@productCategory) = 1
END
GO
EXEC usp_ProductsRead @productType='SKI'
這看起來像SQL Server語法,所以我刪除了MySQL的標籤。 –
你的代碼有什麼問題?你有錯誤嗎? –
不,我沒有得到錯誤。它顯示我所有的數據......不僅是'SKI'類別 – user3671805