1

ExcelファイルからSSISにデータをインポートする必要がありますが、日付列の問題に直面しています。Excelシートの日付形式ではyyyy/mm/dd、データベースにアップロードするとyyyy/dd/mmm形式が変更されます。

これを修正する方法は?

4

3 に答える 3

1

日付をインポートする際に、派生列で 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 を挿入します。

于 2012-05-18T11:36:40.817 に答える
0

まず、以下のコマンドを使用してデータベースにテーブルを作成します

   CREATE TABLE [dbo].[Manual] (
   [Name] nvarchar(255),
   [Location] nvarchar(255),
   [Date] datetime
   )
   SET DATEFORMAT YDM

DATEFORMAT YDMを使用すると、DateはYYYY / DD / MM形式でインポートされます。パッケージを実行する前にパッケージを変更し、列のマッピング時に[宛先テーブルの行を削除する]チェックボックスをオンにします。

次に、パッケージを実行します。それが動作します 。

于 2012-05-21T07:34:53.187 に答える
0

2 つのオプションが表示されます。

  1. 適切な形式のテキスト文字列に変換するためのデータ変換変換。SSIS データ型の使用。
  2. データ型を変換するスクリプト タスクを追加します。VB データ型の使用
于 2012-05-18T12:17:49.737 に答える