ExcelファイルからSSISにデータをインポートする必要がありますが、日付列の問題に直面しています。Excelシートの日付形式ではyyyy/mm/dd、データベースにアップロードするとyyyy/dd/mmm形式が変更されます。
これを修正する方法は?
日付をインポートする際に、派生列で SUBSTRING 関数を使用し、
(LEN(TRIM(SUBSTRING(ReceivedDateTime,1,8))) > 0 ? (DT_DBDATE)(SUBSTRING(ReceivedDateTime,1,4) + "-" + SUBSTRING(ReceivedDateTime,5,2) + "-" + SUBSTRING(ReceivedDateTime,7,2)) : (DT_DBDATE)NULL(DT_WSTR,5))
データが存在する場合は、Substring 関数を使用して DB に設定されている正確な日付を抽出するか、日付が存在しない場合は DB に NULL を挿入します。
まず、以下のコマンドを使用してデータベースにテーブルを作成します
   CREATE TABLE [dbo].[Manual] (
   [Name] nvarchar(255),
   [Location] nvarchar(255),
   [Date] datetime
   )
   SET DATEFORMAT YDM
DATEFORMAT YDMを使用すると、DateはYYYY / DD / MM形式でインポートされます。パッケージを実行する前にパッケージを変更し、列のマッピング時に[宛先テーブルの行を削除する]チェックボックスをオンにします。
次に、パッケージを実行します。それが動作します 。
2 つのオプションが表示されます。