現在、SQLExceptionエラーメッセージをエンドユーザーにとってより有用なメッセージに変換する作業を行っています。私の最大の問題は、探している情報を見つけることです。
たとえば、エラーコード8114は
「データ型[Type1]から[Type2]への変換中にエラーが発生しました」
そしてエラーコード8152は
"文字列型やバイナリは省略されます"
SQLServerを使用してVB.NETでADO.NETを使用すると、これらのエラーの影響を受ける列を特定する簡単な方法はありますか?
現在、SQLExceptionエラーメッセージをエンドユーザーにとってより有用なメッセージに変換する作業を行っています。私の最大の問題は、探している情報を見つけることです。
たとえば、エラーコード8114は
「データ型[Type1]から[Type2]への変換中にエラーが発生しました」
そしてエラーコード8152は
"文字列型やバイナリは省略されます"
SQLServerを使用してVB.NETでADO.NETを使用すると、これらのエラーの影響を受ける列を特定する簡単な方法はありますか?
問題は、SQL Serverからのエラーがその情報を提供しないため、問題の原因となっているフィールドを特定する唯一の方法は、SQLステートメントを分解して個別のフィールドに対して個別に実行することです。それは、開発者が最初から起こらないことを確認するためにテストする必要がある何かのための多くの作業のように聞こえます。開発者のせいではないエラーがありますが、ここにリストした2つは、開発者が起こらないようにする必要があり、プロセスの単体テストの一部である必要があります。
私が考えることができるエラーのいくつかは、開発者のエラーではなく、SQLServerの接続エラーまたはデータベースの破損エラーに関係するものです。
私は実際、私のプログラムに問題があるとユーザーに言わせがちなので、ユーザーが問題の原因を常に把握できるとは限らないという事実が好きです。私が修正すべきエラーを回避する方法を彼らが理解した場合、彼らは問題があると私に言わない傾向があり、問題があることに気付くまでに何年もかかることがあります。