我有一些数据表。其中一列被命名为“类别”,并包含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