写了个存数过程USE [Data_Submit]
GO
/****** 对象:  StoredProcedure [dbo].[Officeinfupdate]    脚本日期: 04/05/2011 20:15:27 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO-- =============================================
-- Author: <王苏>
-- Create date: <2011-3-18 10:20:26>
-- Description: <报送单位信息修改>
-- =============================================
ALTER PROCEDURE [dbo].[Officeinfupdate]
@Office_Name nvarchar(100),
@Office_Tel varchar(20) ,
@Office_Fax varchar(20),
@Office_Mail varchar(50),
@Office_Manager nvarchar(20),
@OM_Name nvarchar(20),
@OM_Tel varchar(20),
@OfficeID int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
IF EXISTS(SELECT *
FROM Office_Inf
WHERE Office_Name = @Office_Name)
begin
return 0
end
--检测同名
else
BEGIN
update Office_Inf 
    set Office_Name=@Office_Name,
Office_Tel=@Office_Tel,
        Office_Fax=@Office_Fax,
Office_Mail=@Office_Mail,
        Office_Manager=@Office_Manager 
Where Office_ID=@OfficeID
END
BEGIN
    update Office_Ma 
    set OM_Name=@OM_Name,
    OM_Tel=@OM_Tel
where OM_OfID=@OfficeID
END
return 1
END
然后再sqlmanagement里面执行,可以成功,但是在c#中调用这个存储过程就半失败了,为啥说半失败呢,if (this.data.Officeinfupdate(officename, officetel, officefax, officemail, officemanagername, ofmanagername, ofmanagertel, officeid) == 1)
        {
            Response.Write(@"<script>alert('修改单位信息成功');</script>");
        }
        else Response.Write(@"<script>alert('新的单位名重名或有其他原因修改失败');</script>");
这是c#中的部分代码,它弹出修改成功的提示,但是在数据库里面看,却是没有成功的。求教,这是什么问题。