2017-08-09 15 views
0

ssisをETLツールとして使用して、日付列のステージングからターゲットにデータを読み込む際に混乱が生じています。 ステージング:SSIS - 日付変換日付の書式MM/DD/YYYYまたはDD/MM/YYYY

varchar (datatype)-'09/05/2017' 

がターゲット: 変換変換が 09/05/2017のような日付datatype.Nowレコードに変換するために使用されます。 最終レコードにロードするときは、2017-09-05 00:00:00のようなdatetimeデータ型です。

実際の期待される結果:2017-05-09 00:00:00

注:他のレコードが正しい形式で挿入されています。

+1

[解析のためにSQL Serverによって使用される既定のカルチャ]の可能な複製(https://stackoverflow.com/questions/45508704/default-culture-used-by-sql-server-for-parsing) – Tanner

答えて

2

SSIS - LocaleID DataFlowコンポーネントのプロパティは、日付がMM/DD/YYYYまたはDD/MM/YYYYに解析されるかどうかを処理します。 SQLで

enter image description here

- 同じようなことがSET LANGUAGEコマンドによって処理されます。

SET LANGUAGE us_english 
DECLARE @d DATETIME = '1929/12/18' 

SET LANGUAGE british 
DECLARE @d DATETIME = '1929/12/18' -- fails 

SQLとSSISの両方の設定を確認してください。必要に応じて調整します。

+0

@thanks for the私は設定を変更しました、今それは正常に動作しています.. – Ali

関連する問題