达梦数据库编程指南
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.7 DM SQL程序异常处理

在DM SQL程序的执行过程中,当各种原因使语句不能正常执行时,可能会发生错误或使整个系统崩溃,所以应该采取必要的措施防止这种情况的发生。

在DM SQL程序中出现的警告或错误称为异常,对异常的处理称为异常处理。虽然在DM SQL程序设计中,异常处理部分不是必须编写的,但建议养成在DM SQL程序设计中对可能出现的异常进行指定和处理的习惯。最好针对明显可能出现的错误加以描述并处理,这样在DM SQL程序执行过程中,无论何时发生错误,控制权都会自动地转向执行异常处理部分;否则,当程序在运行中出现错误时,程序就会被自动中止。另外,许多被中止的DM SQL程序是不容易被用户发现的。

【例2-49】异常举例。

img
img

由于SELECT INTO语句每次只能获取一行数据,因此运行时会发生错误,程序异常中止。如果加上异常处理程序,程序就不会异常中止。正确的做法是:

img

异常包括预定义异常和用户自定义异常。预定义异常是DM数据库系统已定义的异常,可以在程序中直接使用,不必在定义部分声明,常用的预定义异常如表2-8所示。用户自定义异常需要在定义部分声明后才能在可执行部分使用。用户自定义异常不一定是达梦数据库的错误,也可以是其他错误,如数据错误。

表2-8 常用的预定义异常