对于所有的开发人员来说,Exception Handling是我们每天都要面对的事情。对于基于Source Code的Exception Handling,我想大家已经司空见惯了,但是对于Database级别的Exception Handling,就没有那么常见了。在这篇文章中,我将会介绍我对于基于Database编程中Exception Handling的一些粗浅的认识:在编写Stored Procedure时,如何抛出一个可预知的Exception,ADO.NET如何处理从Database抛出的Exception,如何保存基于Database Exception的Error Message,如何在Database和.NET Application之间进行消息的传递[注:这里的Database主要指SQL Server]。
谈谈基于SQL Server 的Exception Handling - PART I
在这一节中,我们将对@@ERROR进行详细讨论,详细大家会对@@ERROR有一个深刻的认识;随后,我将介绍在T-SQL如何通过RAISEERROR语句认为地抛出异常,并有效地制定相关的错误信息,比如Erorr Message, Message ID, Severity, State等等。
谈谈基于SQL Server 的Exception Handling - PART II
大家已经习惯了在.NET编程语言中使用Try/Catch,不知道大家对T-SQL有没有深入的认识。在本节中,将着重介绍在T-SQL中如何使用Try/Catch进行异常处理;当我们人为地进行异常处理的时候,我们制定异常相关的Message信息, 这些Message通过SQL Server特性的数据表进行维护,并且通过系统定义的stored procedure进行操作,在本节的最后,将介绍光如何定义和维护这些message,并通过一个完整的例子将他们使用到具体的应用中去。
谈谈基于SQL Server 的Exception Handling - PART III
对于基于SQL Server的ADO.NET应用来说,SqlException将是我们最常见的异常,本节中将会对SqlException进行重点介绍。着重介绍SqlException的属性和上面我们定的Message相关信息的匹配关系;最后将介绍另一个与错误处理相关的主体:InfoMessage。