Excel 2003のスプレッドシートから日付の列をSSISを使用してSQL Server 2005にインポートしようとしています。私は英国にいるので、日付をdd/MM/yyyyの形式にしたい。SSISをSQL Serverに使用する日付形式の問題
残念ながら、スプレッドシートの列には、dd/MM/yyyy(Excel '一般'形式)の文字列と、Excelの '日付'形式のdd/MM/yyyyロケール '英語(英国)')。
これはまさにそれであり、私はユーザーがこれを自分自身で整理できるとは思っていません。
スプレッドシートを見ると、すべての日付が視覚的に正しく表示されます(例:dd/MM/yyyy)。
データベースの保持テーブルのvarcharカラムに値をインポートしようとしています。次に、これらの値をdatetime列を含む適切なテーブルにコピーするストアドプロシージャを実行します。
問題は、スプレッドシートに格納され、日付書式を使用する日付がSQL ServerにMM/dd/yyyyとしてインポートされ、文字列として格納された日付がdd/MM/yyyyとしてインポートされることです。接続文字列にIMEX = 1があります。私はdatetime型の列に入れしようとすると、同じvarchar列に両方のフォーマットを使用して日付は明らかに
SET DATEFORMAT MDY;
SET DATEFORMAT DMY;
したがって、問題を引き起こしている持つ
は役に立ちません。
SSISパッケージがExcelスプレッドシートの一見正しい日付をMM/dd/yyyyとしてSQL Serverにインポートする理由を知っている人はいますか?
SSISパッケージに、この日付の組合せを文字列として使用し、日付書式設定を適用したセルとして機能するdd/MM/yyyyとして日付をインポートするように強制しますか?
他のアイデアですか?
多くのおかげで、
アンソニー