0

データをDB2データベースからODBC経由でMSAccessにインポートしたいと思います。接続はセットアップされて機能していますが、ロケールの問題(ドイツ語のWindows)により、10進値が変換されます。

234.75は、Accessテーブルで23475になります。

Oracleでも同じ問題が発生しましたが、ODBCドライブをUSロケールに設定することで修正できました。DB2 ODBCドライバーを使用してこれを行うにはどうすればよいですか?

DB2 v9.5

4

3 に答える 3

2

これは古い投稿ですが、この問題の解決策から恩恵を受ける人もいます (私も遭遇しました)。解決策は次のとおりです。

  1. ODBC アドミニストレーターを開始する
  2. DSNを開く
  3. タブページを開く
  4. 設定 次の仕様で行を追加します。

    • CLI パラメータ: Patch2
    • 値: 15

これは、DB2 クライアントに「.」を使用するように指示します。ロケールの代わりに小数点記号として。

テスト対象: DB2 V9.7、Access 2010

ソース: http://www-01.ibm.com/support/knowledgecenter/#!/SSEPGG_9.7.0/com.ibm.db2.luw.apdv.cli.doc/doc/r0008805.html

于 2015-05-08T07:36:02.183 に答える
2

ODBC 接続を介してフィールドのプロパティの一部を読み取る可能性はありますか? この場合、これらのプロパティのいくつかがフィールドのタイプ、デフォルト値、長さなどを識別するのに役立つことがわかると思います。そうすれば、インポート コードに数値の変換命令を組み込むことができるはずです。

Windows のロケール設定を US ( start/Settings/Control Panel/Regional and language Settings/Regional Settings/customize) に変更しようとしましたか?

Windows がドイツ語であっても、小数点記号、日付などを他の標準に設定できます (たとえば、すべての Windows アプリケーションで、「,」の代わりに「.」を小数点記号として明示的に宣言できます)。

于 2009-09-15T21:10:11.727 に答える