2011-10-21 106 views
0

我需要写一个存储过程将返回一个string.logic是存储过程输出参数

当用户尝试插入一个新的记录,我需要检查记录已经exist.if存在是否需要返回味精“记录存在”否则返回“插入”

以下是我的时刻做,我又立刻陷入here.can有一个人帮我办手续

CREATE PROCEDURE [dbo].[spInsetPurpose] 
@Purpose VARCHAR(500), 
@Type VARCHAR(6), 
@Result VARCHAR(10)= NULL OUTPUT 
AS 
BEGIN 
Declare @Position VARCHAR(20) 
DECLARE @TempTable TABLE (Purpose VARCHAR(500)) 

INSERT INTO @TempTable 
SELECT Purpose FROM tblPurpose WHERE [email protected] 

INSERT INTO tblPurpose(Purpose,[Type]) VALUES(@Purpose,@Type) 

END 

回答

3

要检查是否行已经存在,你可以做

If Exists (Select Top 1 1 from tblPurpose where Purpose = @Purpose and [Type] = @Type) 
Begin 
    Insert Into tblPurpose 
    (Purpose, [Type]) 
    Select 
    @Purpose, @Type 

    SET @Result = 'Inserted' 
End 
Else 
Begin 
    SET @Result = 'Record exists' 
End