Sql 存储过程输出参数

Sql 存储过程输出参数,sql,sql-server,stored-procedures,Sql,Sql Server,Stored Procedures,我需要编写一个存储过程,它将返回一个字符串 当用户尝试插入新记录时,我需要检查该记录是否已经存在。如果存在,则需要返回消息“record exist”,否则返回“Inserted” 下面是我目前所做的,我被困在这里。有人能帮我完成这个过程吗 CREATE PROCEDURE [dbo].[spInsetPurpose] @Purpose VARCHAR(500), @Type VARCHAR(6), @Result VARCHAR(10)= NULL OUTPUT AS BEGIN Declar

我需要编写一个存储过程,它将返回一个字符串

当用户尝试插入新记录时,我需要检查该记录是否已经存在。如果存在,则需要返回消息“record exist”,否则返回“Inserted”

下面是我目前所做的,我被困在这里。有人能帮我完成这个过程吗

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 Purpose=@Purpose

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

END 

要检查行是否已存在,可以执行以下操作

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

要检查行是否已存在,可以执行以下操作

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