ページの先頭行へ戻る
Symfoware Server V10.0.0 トラブルシューティング集

A.2.4 アプリケーションコンパイル時のエラーメッセージ

アプリケーションのコンパイル時に出力されるエラーメッセージごとに、その対処方法を説明します。

「qdg12226e: ルーチン定義の実行で重症エラーを検出しました」

処理

プロシジャ定義

事象

コンパイルエラー

メッセージ

qdg12226e: ルーチン定義の実行で重症エラーを検出しました 詳細メッセージ='JYP8635E “INTEGER”の前後にセミコロンが指定されていません.'

埋込みエラー番号

原因と対処

セミコロンの対応がとれていないため、エラーが発生しています。ただし、以下に示すように、重要なキーワードが足りないことにより、セミコロンの対応が崩れている場合もあります。

【定義文】
CREATE PROCEDURE S.P1(IN PARA1 INTEGER)
BEGIN
DECLARE A INTEGER ;
SET A = PARA1 + 1 ;
INSERT INTO T1(C_ID, U_NO, S_CODE)
VALUES ('IDxxxxxx', A, '0001') ;
END ;
【エラー内容】

qdg12226e: ルーチン定義の実行で重症エラーを検出しました 詳細メッセージ='JYP8635E “INTEGER”の前後にセミコロンが指定されていません.’

プロシジャルーチンを定義する場合、プロシジャルーチンの前後をEXEC SQLとEND-EXEC;で囲って定義します。これにより、上記定義文では、BEGIN- END; におけるENDの後ろのセミコロン(;)は不要となります。
以下にプロシジャルーチン定義文を記述します。

EXEC SQL
CREATE PROCEDURE S.P1(IN PARA1 INTEGER)
BEGIN
DECLARE A INTEGER ;
SET A = PARA1 + 1 ;
INSERT INTO T1(C_ID, U_NO, S_CODE)
VALUES ('IDxxxxxx', A, '0001') ;
END
END-EXEC ;

なお、プロシジャルーチン定義時(rdbddlex)は、以下のようにxオプションを指定してコマンドを実行することが必要です。

rdbddlex -d データベース名 -x 入力ファイル

参照

詳細は、“アプリケーション開発ガイド(共通編)”の“プロシジャルーチンの定義”を参照してください。

「LINK fatal Error LNK1181:"f3cwdrv.lib"が開けません」

処理

Sqlcobol

事象

リンクエラー

メッセージ

LINK fatal Error LNK1181:"f3cwdrv.lib"が開けません

埋込みエラー番号

原因と対処

環境変数“lib”に、Symfoware Serverをインストールしたドライブの“\SFWSV\ESQL\LIB”が追加されていない可能性があります。
すでに追加されている場合は、同一マシン上にSymfoware Serverと同梱されているクライアント機能がインストールされているかを確認してください。インストールされている場合は、Symfoware Serverをインストール後、クライアント機能をインストールする必要がありますので、クライアント機能を一度アンインストールしたあと、再インストールしてください。

「qdg12227e: データベーススペース定義文の実行で重症エラーを検出しました」

処理

データベーススペース定義

事象

コンパイルエラー

メッセージ

qdg12227e: データベーススペース定義文の実行で重症エラーを検出しました 詳細メッセージ='JYP4103E オペランド“/RDB2/DBS01  ATTRIBUTE”以降の指定“SPACE”に誤りがあります.'

埋込みエラー番号

原因と対処

以下に示すように、データベーススペースのファイル名とATTRIBUTEの間に全角の空白が指定されているため、エラーが発生しています。

ファイル名とATTRIBUTEの間に全角の空白がないかを確認してください。

全角の空白がある場合は、取り除いて再実行してください。

【定義文】
CREATE DBSPACE RDBS01 ALLOCATE FILE /RDB2/DBS01□ATTRIBUTE SPACE(2M)

注)□は全角の空白です。

【エラー内容】

qdg12227e: データベーススペース定義文の実行で重症エラーを検出しました 詳細メッセージ='JYP4103E オペランド“/RDB2/DBS01  ATTRIBUTE”以降の指定“SPACE”に誤りがあります.'