データをDB2データベースからODBC経由でMSAccessにインポートしたいと思います。接続はセットアップされて機能していますが、ロケールの問題(ドイツ語のWindows)により、10進値が変換されます。
234.75は、Accessテーブルで23475になります。
Oracleでも同じ問題が発生しましたが、ODBCドライブをUSロケールに設定することで修正できました。DB2 ODBCドライバーを使用してこれを行うにはどうすればよいですか?
DB2 v9.5
これは古い投稿ですが、この問題の解決策から恩恵を受ける人もいます (私も遭遇しました)。解決策は次のとおりです。
設定 次の仕様で行を追加します。
これは、DB2 クライアントに「.」を使用するように指示します。ロケールの代わりに小数点記号として。
テスト対象: DB2 V9.7、Access 2010
ODBC 接続を介してフィールドのプロパティの一部を読み取る可能性はありますか? この場合、これらのプロパティのいくつかがフィールドのタイプ、デフォルト値、長さなどを識別するのに役立つことがわかると思います。そうすれば、インポート コードに数値の変換命令を組み込むことができるはずです。
Windows のロケール設定を US ( start/Settings/Control Panel/Regional and language Settings/Regional Settings/customize
) に変更しようとしましたか?
Windows がドイツ語であっても、小数点記号、日付などを他の標準に設定できます (たとえば、すべての Windows アプリケーションで、「,」の代わりに「.」を小数点記号として明示的に宣言できます)。