さて、MS Access はその datetime
を表します double
としてのデータ型
:
- エポック
MS カレンダーの (ゼロ点) は
30 December 1899 00:00:00
です。 double
の整数部分 は、エポックからのオフセット (日数) です。double
の小数部分 は 1 日の小数部分です。
仕様によると、MS Access datetime
の日付部分のドメイン です
- 下限:
1 January 100
- 上限:
31 December 9999
そして、SQL Server datetime
のドメイン です:
- 下限:
1 January 1753
- 上限:
31 December 9999
MS Access データベースに 1753 年 1 月 1 日より前の日付があると、問題が発生します。偽のデータを見つけて修正する必要があります。いくつかのアプローチ:
- <リ>
アクセス データベースで、ビュー/クエリを作成して、データを SQL Server に適した形式で表示します。次に、そこから SQL Server に一括読み込みします。
<リ>
多くの場合、ソース データが汚れている/破損しているというのはほぼ当然の結論であるため、データを SQL Server に一括ロードする場合、ソース データを varchar
タイプであり、制約/キーがありません。それが完了したら、データを適切なホームに移動する前に、データの必要なクリーンアップとマッサージを行うストアド プロシージャを実行します。