50 列以上のデータを検証するためにスクリプト コンポーネントを使用しています。しかし、もっと時間がかかります。ssisのサードパーティツールを使用せずに、この検証のソリューションを提供する機関はありません。
例えば :
次の点でdob列を検証しました
- 日付形式が正しいかどうか。これは私の期待する形式 (mm/dd/yyyy) です。
- DOB が空ではありません。
- DOB 値は (12/31/9999) 以下です。
- DOB値もチェックは日付かどうかです。
50 列以上のデータを検証するためにスクリプト コンポーネントを使用しています。しかし、もっと時間がかかります。ssisのサードパーティツールを使用せずに、この検証のソリューションを提供する機関はありません。
例えば :
次の点でdob列を検証しました
Excel ファイルのフィールドに疑問がある場合は、データをステージング テーブルにインポートし、すべてのフィールドを varchar としてテーブルを作成し、そこにファイルからデータを挿入できます。データがロードされたら、 SQL検証またはssisコンポーネントを使用してデータを検証する場合、どちらが高速かをテストする必要があります.
編集 1: この後、次のような各フィールドを検証する関数を作成できます。
CREATE Function [dbo].[Validate_Field](
@Code [varchar](2),
@Code2 [varchar](2)
)
Returns VarChar(50) AS
BEGIN
Declare @return Varchar(50)
SET @Salida = ''
IF @Code = '29' RETURN 'Something 1'
IF @Code2 = '21' RETURN 'Something 2'
ELSE RETURN 'Missing'
Return (@return)
END
SELECT [dbo].[Validate_Field](Field1, Field2)
FROM Staging_Table
これが役立つことを願っています。