簡體   English   中英

SSIS 中的條件數據驗證

[英]Conditional Data Validation In SSIS

我有一種情況,其中表有兩個主要列 DataFieldName 和 DataFieldValue 以及一些標識符,例如 OrderNumber。

現在在 DataFieldName 中有一個名為“OrderDate”的值,並且相應的日期將出現在 DataFieldValue 中。

但是“OrderDate”的一些值是以非日期值的形式出現的。 我需要根據 DataFieldName 的值為“OrderDate”的條件驗證此類非日期值,然后驗證 DataFieldValue 是否為 SSIS 中的有效日期。

您可以使用Conditional Split數據:

在此處輸入圖像描述

如果您使用的是 SQL,則使用條件查詢:

SELECT DataFieldName, DataFieldValue FROM yourTable
WHERE DataFieldName LIKE 'OrderDate'

如果您使用 SQL 服務器:

SELECT   
    CASE WHEN TRY_CONVERT(date, DataFieldValue) IS NULL   
    THEN 'Cast failed'  
    ELSE 'Cast succeeded'  
END AS Result 
FROM yourTable

如果您使用的是 Oracle:

SELECT cast(DataFieldValue AS NUMBER DEFAULT NULL ON CONVERSION ERROR) FROM yourTable

或者,您可以使用Data Conversion Transformation組件:

在此處輸入圖像描述

然后您可以將 output 重定向到平面文件,例如: 在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM