2016-08-23 7 views
0

これはEmacs SQLモードの実際の問題ではありません。しかし、私は、誰かが解決策を見つけるのを助けることができると思います。Emacs SQLモードでdb2cmd.exeを使用した言語タイプ(IBM DB2)の設定

私はEmacsでdb2cmd.exeを通じてSQLモードを使用

は、私は情報の下になった:

SQL0863W A成功した接続が行われたが、唯一のシングルバイト文字を使用する必要があります。 SQLSTATE = 01539

Windows環境を変更した場合の解決策です。 http://www.ibm.com/developerworks/data/library/techarticle/0209kline/0209kline.html

しかし、Emacsが正しい設定でこの問題を削除することができますので、私は、私のWindows 7の私は毎日のEmacsを使用して、Emacsは非常に良い言語/コード化システムを持っている中で何かを変更することはできません。

DB2ホスト・コード:1141ドイツユーロ

私は何度も試みたが、ないより多くのアイデア。誰かにすでに解決策がありましたか?

+0

私はemacsが何もできないと思います。私はそれができることを望む - しかし、それは完全にその制御から外れています。 db2cmdはWindows APIを使用してエンコード/変換を行いますが、これはシステムにインストールされている言語でのみ機能します。 –

答えて

0

あなたは適切なコードページにあなたの.emacsファイルにDB2CODEPAGE環境変数を設定することで、この問題を解決できる場合があります。

;; Set DB2CODEPAGE environment DB2 Command Line Processor (CLP) 
;; (DB2 CLP is called by 'sql-db2) 
(setenv "DB2CODEPAGE" "1252") 

コードページ1252はWindowsの西ヨーロッパ、ラテンです。 1208はUTF-8です。

明らかに(おそらく)この変更を選択するには、Emacsを再起動する必要があります。

+0

うわー、ありがとう。しかし、私はdb2cmd.exeとの接続のライセンスが必要だと思う: SQL1598Nライセンス・プロンプトのためにデータベース・サーバーへの接続が失敗しました。 SQLSTATE = 42968 JDBCを使用する他のクライアントにライセンスが必要ない理由を教えてください。 :( –

+0

メインフレームに接続しているような音がする場合は、CLPを使用するにはDB2 Connectライセンスが必要ですが、Javaにもこのライセンスが必要です。そのため、z/OS上のDB2に接続しているアプリケーションでは、 'db2jcc.jar CLASSPATHの 'file *と* db2jcc_license_cisuz.jar'ファイル –

+0

私は同僚に尋ねましたが、私たちはCLPのライセンスを持っていません:-( –

関連する問題