Sybase を使用する前に、次のようにシステムを変更する必要があります。
UNIX:
- Sybase に付属のコピーブック cobpub.cbl と sybhesql.cbl ですべての COMP データ項目を COMP-5 に変更します。
- COBOPT 環境変数を $COBDIR/src/sybase/cobopt_sybase に変更します。
Windows:
- Sybase に付属のコピーブック cobpub.cbl と sybhesql.cbl ですべての COMP データ項目を COMP-5 に変更します。
Sybase を使用する際に発生する問題をトラブルシューティングするときには、次の点に注意してください。
- COBSQL で CP を使用しないでコピーブックを検索する場合は、Sybase プリコンパイラが生成するコピーブックが完全修飾されていることが必要です。Sybase プリコンパイラは、拡張部分の検索は行いません。
- クライアントでのメッセージの報告に使用する正しい言語を検索するときに、Sybase プリコンパイラに問題がある場合は、Sybase のファイル locales.dat が正しく設定されているか確認してください。
クライアントのオペレーティング システムがデフォルト設定で構成されていて、Sybase で各ロケール サポート エラーが報告される場合は、LANG 環境変数を使用して、locales.dat ファイルの設定を上書きしてください。
たとえば、Windows NT クライアントで問題が発生し、locales.dat ファイルで次のような Windows NT の設定が行われている場合の例を説明します。
[NT]
locale = default, us_english, iso_1
locale = enu, us_english, iso_1
locale = fra, french, iso_1
locale = deu, german, iso_1
この場合に、英語用に LANG を設定するには、次のようにします。
LANG=enu
たとえば、AIX クライアントに問題が発生し、locales.dat ファイルに次のような AIX の設定が行われている場合の例を説明します。
[aix]
locale = C, us_english, iso_1
locale = En_US, us_english, iso_1
locale = en_US, us_english, iso_1
locale = default, us_english, iso_1
この場合に、US English で行うことができる LANG 設定は、次のようになります。
LANG=en_US
- Sybase エラー メッセージを識別することが困難な場合があります。COBSQL でそれらのエラー メッセージを識別するには、esql.loc ファイルを変更します。テキスト エディターを使用して esql.loc ファイルを編集し、メッセージのレイアウトを次のように変更します。
SYB-severity-number-text
パラメーターは次のとおりです。
SYB |
変更された Sybase エラー メッセージであることを COBSQL に示す文字列。 |
severity |
エラーの重大度を示します。Sybase メッセージには、一般的エラーや致命的エラーではなく、警告のみのエラーもあります。 |
number |
Sybase エラーに割り当てられる 4 桁の一意のエラー番号。 |
text |
Sybase のエラー メッセージ。 |
たとえば、esql.loc ファイルの一般的なエントリは、次のようになります。
9 = M_PRECLINE, "Warning(s) during check of query on line %1!."
これを次のように変更します。
9 = M_PRECLINE, "SYB-W-2009 Warning(s) during check of query on line %1!."
esql.loc ファイルは変更する前にコピーしておくことをお奨めします。変更バージョンを使用すると、COBSQL であらゆる Sybase エラー メッセージを検出できます。
esql.loc の位置は、使用する言語やコード ページによって異なります。これは、locales.dat ファイルで定義されます。AIX プラットフォームのデフォルト言語の定義が、次のように行われている場合の例を説明します。
[aix]
locale = C, us_english, iso_1
locale = En_US, us_english, iso_1
locale = en_US, us_english, iso_1
locale = default, us_english, iso_1
このデフォルトの言語は、iso_1 コード ページを使用した us_english なので、使用する esql.loc のコピーは次のようになります。
/sybase-home/locales/messages/us_english/iso_1/esql.loc
sybase-home は、Sybase クライアントのインストール先ディレクトリです。
Sybase でのさまざまなエラー メッセージ ファイルの使用および検索方法については、Sybase の『Client Reference Manual』を参照してください。
- Sybping を異なる Sybase サーバーで使用する場合は、各サーバーに定義されたサービスが必要になります。Sybase 製品の sqledit は、必要な情報の入力方法を示します。
- Sybase への接続時に、サーバーの名前が指定されていない場合は、Sybase により DSQUERY という名前の環境変数が検索されます。これは、プロジェクトの環境変数セクション内で設定できます。設定すると、異なるプロジェクトが異なる Sybase サーバーに接続できるようになります (Windows 環境のみ)。
- Sybase プリコンパイラの実行時には、さまざまな有益な情報が生成されます。COBSQL 指令、VERVOSE が設定されていると、COBSQL はできるだけ多くの情報を表示します。
- COBSQL の DISPLAY 指令を使用する場合は、Sybase プリコンパイラによって作成された統計情報が画面に表示されます。
- COBOL LIST 指令を使用する場合には、COBSQL はプリコンパイラから収集された情報を COBOL チェッカーに渡し、COBOL リストの下部に表示します。
- Sybase プリコンパイラは、SQL 文を含まないプログラムを受け入れ、出力ファイルを作成します。これは、プロジェクトのあらゆるプログラムが正常にコンパイルされることを意味します。しかし、これはまた Sybase プリコンパイラが、Sybase SQL 文を含むプログラムに挿入されるあらゆる作業場所節項目と COBOL サポート コードを Sybase 以外のプログラムに挿入することを意味します。これによってプログラムがより大きくなり、パフォーマンスに影響を及ぼす場合があります。
- Sybase COBOL プリコンパイラが Sybase System 11 Server とは別に提供される場合があります。この場合は、Open Client サポート ファイルが独自のバージョンで提供され、これらの 2 つの製品のサポート ファイルのバージョンが異なると、問題が発生する可能性があります。このため、Sybase COBOL プリコンパイラをインストールする場合は、注意が必要です。このような状況では、Sybase System 11 COBOL プリコンパイラのインストールの前に、Sybase のサポートにお問い合わせになるよう強くお奨めします
- サーバーがインストールされているマシンに Sybase クライアントをインストールする場合 (またはその逆の場合) は、特に注意が必要です。Sybase クライアントだけをインストールする場合は、まったく問題はありません。