程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL2005存儲過程中使用try catch捕獲異常

SQL2005存儲過程中使用try catch捕獲異常

編輯:關於SqlServer
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
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved