Sql server 如何在dbExpress中处理来自SQL Server的用户定义错误?

Sql server 如何在dbExpress中处理来自SQL Server的用户定义错误?,sql-server,delphi,delphi-xe2,dbexpress,Sql Server,Delphi,Delphi Xe2,Dbexpress,我正在使用dbExpress访问SQLServer2005/2008数据库。 我已从触发器/存储过程向我的应用程序发出一条消息: raiserror 99999 "MSG" 通过这样做,我得到了如下异常: SQL State: 42000, SQL Error Code: 99999 MSG 我已尝试使用以下代码获取错误代码,但我获取的错误代码为3604而不是99999: if (pErrorObj.ErrorCode = 99999) then ShowMessage('Error'

我正在使用dbExpress访问SQLServer2005/2008数据库。 我已从触发器/存储过程向我的应用程序发出一条消息:

raiserror 99999 "MSG"
通过这样做,我得到了如下异常:

SQL State: 42000, SQL Error Code: 99999
MSG
我已尝试使用以下代码获取错误代码,但我获取的错误代码为3604而不是99999:

if (pErrorObj.ErrorCode = 99999) then
   ShowMessage('Error');

如何检索此错误代码(99999)及其消息(MSG)?

是否也发生了实际的SQL错误(MSG),或者是否只有您提出了9999?3604是一个“忽略重复密钥”我在某些场景中引发了一个错误。