我想编写一个需要2个参数的过程(Int,string)如果表中有一行存在,我会得到@dane = 1;最后我想选择@dane,但我的程序不好。我不能使用return @dane。MSSQL - 返回选择
USE [SS]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [permission].[CheckSkill]
(
@SkillId INT, -- Identyfikator użytkownika
@Description NVARCHAR(100) = NULL
)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @dana as int
SET @dana = 0
-- this is redundant:
--SET @Description = RTRIM(LTRIM(ISNULL(@Description,'')))
IF EXISTS (SELECT * FROM permission.UserXSkill Where permission.UserXSkill.SkillId = @SkillId)
BEGIN
SET @dana = 1;
END
SELECT @dana AS ID;
END
GO
主题[关闭]感谢您的帮助。
你有一个错字 - 你声明的变量'@ dana'然后设置变量' @ dane'。当为变量赋值时也必须使用'SET'或'SELECT'。 –
@Ed Harper我改变了这个。这是我的错误。 –