0

私はその一部が以下の関数を持っています(Dbms_sql.Varchar2sを使用します):

str_work(Nvl(str_work.Last, 0) + 1) :=  ' Select ';
str_work(Nvl(str_work.Last, 0) + 1) :=  '  TIP.ID_ITEM,';
str_work(Nvl(str_work.Last, 0) + 1) :=  '  CPVW.ID_FAB,';
str_work(Nvl(str_work.Last, 0) + 1) := '  TO_CHAR(CPVW.QTD, ''9999999'') as QTD';
str_work(Nvl(str_work.Last, 0) + 1) :=  ' from ';
str_work(Nvl(str_work.Last, 0) + 1) :=  '  CAD_PILAR_VW CPVW';

実行するとすべて問題ありませんが、行を変更すると

str_work(Nvl(str_work.Last, 0) + 1) := '  TO_CHAR(CPVW.QTD, ''9999999'') as QTD';

str_work(Nvl(str_work.Last, 0) + 1) := '  TO_CHAR(CPVW.QTD, ''99999.99'') as QTD';

無効な番号のエラーが発生しました

テーブルは CPVW.QTD に 3 つの値のみを持ちます: 100、200、300 で、タイプは NUMBER です

「9999999」とコンマ、小数点の組み合わせを何度も試してみましたが、すべて同じエラーが発生しました。無効な番号。

この関数は、TO_CHAR がコンマまたは小数点なしの ''9999999'' である場合にのみ機能します。

手伝って頂けますか?

4

0 に答える 0