UTL_LMSパッケージは、異なる言語のエラー・メッセージを取り出してフォーマットします。
|
関連項目: 『Oracle Databaseグローバリゼーション・サポート・ガイド』 |
この章では、次の項目について説明します。
セキュリティ・モデル
表210-1 UTL_LMSパッケージのサブプログラム
| ファンクション | 説明 |
|---|---|
|
|
取り出したエラー・メッセージの書式を設定します。 |
|
|
指定されたエラー番号、製品、機能、言語およびメッセージを基にしてエラー・メッセージを取り出します。 |
このファンクションは、GET_MESSAGEファンクションで取り出したメッセージの書式を設定し、それを戻します。このファンクションが失敗すると、結果としてNULLが戻されます。
次の表に、format文字列で使用できる特殊文字を示します。
| 特殊文字 | 説明 |
|---|---|
'%s' |
次の文字列引数を代入します。 |
'%d' |
次の整数引数を代入します。 |
'%%' |
特殊文字%を表します。 |
構文
UTL_LMS.FORMAT_MESSAGE ( format IN VARCHAR2 CHARACTER SET ANY_CS, args IN VARCHAR2 CHARACTER SET ANY_CS DEFAULT NULL) RETURN VARCHAR2 CHARACTER SET format%CHARSET;
パラメータ
例
DECLARE
s varchar2(200);
i pls_integer;
BEGIN
i:= utl_lms.get_messsage(26052, 'rdbms', 'ora', 'french', s);
dbms_output.put_line('before format, message is: '||s);
dbms_output.put_line('formatted message is: '||utl_lms.format_message(s, 9, 'my_column_name');
END;
/
次の例は書式設定する前のメッセージです。
Type %d non pris en charge pour l'expression SQL sur la colonne %s.
次の例は書式設定した後のメッセージです。
Type 9 non pris en charge pour l'expression SQL sur la colonne my_column_name.
このファンクションは、Oracleのエラー・メッセージを取り出します。ユーザーは、lmsgenユーティリティを使用して、ユーザー固有のエラー・メッセージを定義できます。
このファンクションが成功すると、0が戻されます。失敗すると、-1が戻されます。
|
関連項目: lmsgenユーティリティの詳細は、『Oracle Databaseグローバリゼーション・サポート・ガイド』を参照してください。 |
構文
UTL_LMS.GET_MESSAGE ( errnum IN PLS_INTEGER, product IN VARCHAR2, facility IN VARCHAR2, language IN VARCHAR2, message OUT NOCOPY VARCHAR2CHARCTER SET ANY_CS) RETURN PLS_INTEGER;
パラメータ
表210-3 GET_MESSAGEファンクションのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
エラー番号を指定します。 例: |
|
|
エラー・メッセージが適用される製品を指定します。 例: ' |
|
|
エラー・メッセージの接頭辞を指定します。 例: |
|
|
メッセージの言語を指定します。このパラメータでは大文字と小文字は区別されません。 デフォルトは |
|
|
取り出したメッセージの出力バッファを指定します。 |
使用上の注意
languageパラメータをNULLに設定すると、NLS_LANGUAGEセッションのパラメータの値がデフォルトとして使用されます。
例
DECLARE
s varchar2(200);
i pls_integer;
BEGIN
i:=utl_lms.get_message(601, 'rdbms', 'oci', 'french', s);
dbms_output.put_line('OCI--00601 is: '||s);
END
/
結果は次のように出力されます。
OCI--00601 is: Echec du processus de nettoyage.