如何从插入sql语句返回值,是否插入数据

时间:2014-05-07 09:33:36

标签: c# sql

IF (@Mode='Insert')
Begin
If NOT Exists (Select ProductName From dbo.tblProduct WHERE ProductName = @ProductName) 
Insert into tblProduct
(
ProductName ,
ProductCode )
Values
(

@ProductName ,
@ProductCode )

这是我的插入代码现在使用C#我想解决输出我的意思是代码插入或不插入,即,我想解决这三件事 1.代码插入成功 2.产品名称已经存在 3.发生sql异常错误

而我的C#代码是

int output= objProduct.Insert()

根据以上三个条件输出变量将返回什么

1 个答案:

答案 0 :(得分:1)

使用变量跟踪存储过程的结果

DECLARE @result INT
IF (@Mode='Insert')
Begin
    If NOT Exists (Select ProductName From dbo.tblProduct WHERE ProductName = @ProductName) 
     BEGIN
          Insert into tblProduct
          (ProductName ,ProductCode )
          Values
          (@ProductName ,@ProductCode )

          SET @result=1
     END
     ELSE
         SET @result=0
End

SELECT @result

在C#中,获取返回的值并显示警告框

int output= objProduct.Insert();
if (output.ToString() == "1")
{
   ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('Data Inserted Successfully');</script>", false);
}
else
{
   ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('Can not be enter duplicate values.');</script>", false);
}