メッセージ・フロー内で、外部データベース・リソースにアクセスしたり、これを更新することができます。これは、Filter、Database、および Compute ノードで使用可能な ESQL データベース関数を使用して行います。外部データベースに呼び出しを行うと、表が存在しない、データベースが利用不能である、すでに存在するキーの挿入などのエラーが生じる可能性があります。
これらのエラーが発生したら、ブローカーのデフォルトのアクションは、例外を生成することです。この動作は、プロパティー「データベース・エラーで例外をスローする」の設定の仕方によって決まります。このチェック・ボックスがチェックされている場合、ブローカーはノードの処理を停止し、メッセージをノードの障害端末に伝搬し、エラーの詳細を ExceptionList に記録します。デフォルトの動作をオーバーライドし、データベース・エラーをノードの ESQL で処理する場合、「データベース・エラーで例外をスローする」チェック・ボックスのチェックを外します。つまり、ブローカーは例外をスローしないので、特定の SQL 状態コードが期待されていない場合、THROW ステートメントを組み込んで例外をスローする必要があります。THROW の説明については、THROW ステートメントを参照してください。
ノードでデータベース・エラーを処理するよう選択した場合、データベース状態関数 SQLCODE を使用して、ESQL で行われた DBMS 呼び出しの状況についての情報を受け取ることができます。この関数を現行ノードの ESQL の条件ステートメントに組み込んで、生じる可能性のあるエラーを認識して処理できます。