使いやすいように設計された Microsoft リレーショナル データベース管理システムのファミリ。
> csvファイルのデータをAccessにインポートする際、> 小数点以下を含む数値が、整数に強制的に変換される現象が発生します。> 発生条件は、「csvファイルの3行目~25行目に、小数点が存在しない場合」です。
・テキストインポートウィザードが呼び出された際に、
各フィールドのデータ型の指定をデフォルトのままにした状態で
インポートを実行した。
・VBA またはマクロによってテキスト変換を実行した際に、
インポート定義を指定しなかった。
以上のいずれかに該当するのであれば、Access の仕様通りの動作です。
引用:
> Access は、ファイルの最初の 25 行をスキャンして、> テーブルのフィールドのデータ型を決定します。> ソース ファイルの 25 行目より後に異なるデータ型の値が混在する場合、> インポート操作でスキップされたり不適切に変換されたりする可能性があります。> Access は、各列の最初の 25 行を確認し、対応するフィールドの既定のデータ型の候補を示します。> 列の最初の 25 行に異なるデータ型が含まれる場合 (テキスト型と数値型など)、> 列のすべてまたはほとんどの値と互換性のあるデータ型 (通常、テキスト型) の> 候補が示されます。 別のデータ型を選択することもできますが、選んだデータ型と> 互換性のない値は、無視されるか誤って変換されることに注意してください。
今回の場合は、CSV ファイルの(列見出し行を除いた)先頭から 25 行目までのデータが
スキャンされた結果、そのフィールドのデータ型が倍精度浮動小数点型ではなく
長整数型であると推定された結果でしょう。