您的位置:首页 > 数据库

SQL2005存储过程中使用try catch捕获异常

2007-09-04 18:11 387 查看
 Sql2005中可以使用Try Catch 语句来捕获异常了,不过这个只能捕获一般的异常像连接错误的异常是不能捕获的 具体用法如下:

 


set ANSI_NULLS ON


set QUOTED_IDENTIFIER ON


go




-- =============================================


-- Author:  <Hongyu Niu>


-- Create date: <2007-7-21>


-- Description: 插入一条重大危险源档案信息


-- Return Value: 


-- =============================================




ALTER PROCEDURE [dbo].[P_DangerSource_File_Add]


 @SourceName varchar(50),  --名称


 @TypeID int,     --类型


 @DangerLevel varchar(30),  --危险级别


 @IsControl bit,     --是否监控


 @SourceLocation varchar(200), --危险源地点


 @SourceNum int,     --危险源数量


 @Descrip varchar(200),   --对危险源描述


 @Accident varchar(150),   --可能发生事故


 @Summarize varchar(200),  --概述


 @Supervisor varchar(30),  --负责人


 @Telephone varchar(50),   --联系电话


 @UserID varchar(50),   --登记人ID


 @InDate datetime,    --登记日期


 @IsChanged bit,     --是否变更


 @DeptID varchar(20)    --部门ID


AS




Begin Try




INSERT INTO T_DangerSource_File (


 [SourceName],


 [TypeID],


 [DangerLevel],


 [IsControl],


 [SourceLocation],


 [SourceNum],


 [Descrip],


 [Accident],


 [Summarize],


 [Supervisor],


 [Telephone],


 [UserID],


 [InDate],


 [IsChanged],


 [DeptID]


) VALUES (


 @SourceName,


 @TypeID,


 @DangerLevel,


 @IsControl,


 @SourceLocation,


 @SourceNum,


 @Descrip,


 @Accident,


 @Summarize,


 @Supervisor,


 @Telephone,


 @UserID,


 @InDate,


 @IsChanged,


 @DeptID


)




return SCOPE_IDENTITY()




End Try




Begin Catch


return -1


End Catch

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  sql 存储 insert file 电话 go