- - PR -
別パッケージの定数を呼び出す方法。
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-11-18 13:42
お世話になります。
PL/SQLで別パッケージの定数を呼び出すとエラーとなる現象になるのですが、 このような現象にあわれた方はいらっしゃいますか?? エラー名 ORA-06502: PL/SQL: 数値または値のエラー: 文字列バッファが小さすぎます。が発生しました この方法は変えずに、解決方法を探しています。 解決方法をご存知の方がおりましたら、教えてください。 よろしくお願いします。 |
|
投稿日時: 2005-11-18 14:12
そのエラーコードはは別パッケージの定数云々よりは
文字列変数に長さを超えた値を代入しようとした際(例えば CHAR(1) の変数に 'XX' を 代入する等)に発生するものだったと思いますが、その辺りはご確認されてますか? _________________ # Future Is On Fire ! |
|
投稿日時: 2005-11-18 15:08
ご返答ありがとうございます。
>文字列変数に長さを超えた値を代入しようとした際(例えば CHAR(1) の変数に 'XX' を >代入する等)に発生するものだったと思いますが、その辺りはご確認されてますか? はい、オーバーフローはしてません。 詳しくは、 --********************************************************** -- 共通パッケージ --********************************************************** CREATE OR REPLACE PACKAGE P_COMMON IS /* ------------------------------------------- */ /* 定数定義(処理モード) */ /* ------------------------------------------- */ C_A CONSTANT CHAR(2) := '00'; END P_COMMON; / メインパッケージにて「P_COMMON.C_A」って呼び出すと、エラーになるのです。 エラーといっていますが、なる時とならない時とバラバラで不安定な動きをしています。 |
|
投稿日時: 2005-11-18 15:51
メインパッケージ側で長さの不足している変数に代入してたりとか
長さを超える文字列結合したり ということもないわけですよね. となるとちょっとわからない _________________ # Future Is On Fire ! |
|
投稿日時: 2005-11-18 16:45
もし、お使いのバージョンが 10.1.0.4 なら PL/SQL で CHAR 型を利用したときで、特定の条件を満たす場合に発生する不具合が公開されています。
|
1