これは私が作業しているsql 2000データベースです。SQL 2000 'TRY CATCH like'エラー処理
私はステージングテーブルと呼ばれるものをデータの生データダンプといいます。すべてがntextまたはnvarchar(255)です。
は、私が使用しているすべてのレコードを、私はこれを行うつもりだった方法を反復した
適切なデータ型に(つまりint型、小数、nvarchar型など)は、このデータのすべてを変換/キャストする必要がありますwhileループを作成し、各レコードの各列でCASTを試行します。特定のレコードにアクセスした後、処理済み(ビットフィールド)としてフラグを立てます。
しかし、エラーが発生した場合はどのようにログに記録できますか?whileループは続行できます。
まず、ローカルSQL 2005インスタンスのTRY CATCHを使用してこれを実装しました(プロジェクトを開始するため)、すべてがうまくいっていましたが、今日、国際的なDBAが設定したdev &生産データベースが私はSQL 2000のインスタンスので、私は準拠する必要があります。
EDIT:SSISパッケージを使用してステージングテーブルを作成しています。私は今、パッケージを再訪し、変換を処理するためのスクリプトコンポーネントを実装する必要があることを知っています。みんなありがとう
EDIT:私は午前レコード単位ではなく、バッチ挿入によって記録にこれをやって、それが可能になるように、取引アイデアはようだが、私はわからないどのようにトラップ@@ ERRORへストアドプロシージャを続行することができます。
EDIT:私は実際にGuy's approachが好きです。この方法で実装します。