私はT-SQLで自分自身を教えているので、この特定の問題とは無関係であっても、すべてのポインタが歓迎されるので、私は自分のコードを書く際に効率を上げることができると確信しています。T-SQLスクリプトのエラーチェック
私が書いた夜間のルーチンで問題が発生しています。初期データを作成しているデータベースプログラムは、私のコントロール外であり、ゆるやかに書かれているので、時折スクリプトを壊す可能性のある悪いデータがあります。私はスクリプトにエラーチェックを追加するための支援を探しているので、全体が爆発するのではなく1つのレコードが失われます。
コードは次のようになります
SELECT convert(bigint,(SUBSTRING(pin, 1, 2)+ SUBSTRING(pin, 3, 4)+ SUBSTRING(pin, 7, 5) + SUBSTRING(pin, 13, 3))) AS PARCEL, taxyear, subdivisn, township, propclass, paddress1, paddress2, pcity
INTO [ASSESS].[dbo].[vpams_temp]
FROM [ASSESS].[dbo].[Property]
WHERE parcelstat='F'
GO
問題は連結が発生し、この最初の部分です。この文字列(11-1111-11111.000)をこの番号(11111111111000)に変換しようとしています。データを正しく入力すると、正確な点と数字の間に正確な句読点があります。彼らが間違いを犯すと、間違った箇所に句読点ができ、数字に変換できない文字列が作成されます。
私の提案は、一時テーブルに文字列を配置することです。その後、ハイフンとピリオドを取り除きます。最後に、整数の文字列のみを使用します。 –