3
当我运行像如何处理多个错误
BACKUP LOG [somedb]
TO DISK = N'i:\log.bak';
它抛出2个错误消息:
Msg 3201, Level 16, State 1, Line 2
Cannot open backup device 'i:\log.bak'. Operating system error 3(The system cannot find the path specified.).
Msg 3013, Level 16, State 1, Line 2
BACKUP LOG is terminating abnormally.
当我尝试用TRY CATCH的错误返回处理错误总是3013这是一个问题,因为我想知道,如果备份失败,由于缺乏空间,或者如果驱动器不存在,等等
使用@@ ERROR返回相同的错误号。
有什么办法来处理这样的多个错误消息?
所有相关的细节可以在相同的T-SQL来完成? – Nodja
@MikeDaSpike:不,不是我的知识 - 甚至没有用'TRY..CATCH'机制:-( –
@Mike - 不容易'DBCC OutputBuffer中(@@ SPID).'也许能够做到这一点,但你。 “会需要[找出如何解析输出(http://stackoverflow.com/questions/3697492/capturing-multiple-error-messages-from-a-single-statement/5773071#5773071) –