【发布时间】:2019-12-01 02:17:31
【问题描述】:
我正在使用函数来转换货币,但我收到此错误 12703。00000 -“不支持此字符集转换”,我不知道为什么。
这是我正在使用的代码
CREATE OR REPLACE FUNCTION convert(r_comm IN commande.ref_commande%type,
devise IN VARCHAR2)
RETURN commande.montant_ttc%type IS
mt commande.montant_ttc%type;
montant NUMBER(20) :=0;
BEGIN
IF devise = 'dollar' THEN
SELECT montant_ttc INTO mt FROM commande WHERE ref_commande = r_comm;
montant := mt*10;
END IF;
IF devise = 'euro' THEN
SELECT montant_ttc INTO mt FROM commande WHERE ref_commande = r_comm;
montant := mt*11;
END IF;
RETURN montant;
END convert;
/
DECLARE
r_comm commande.ref_commande%type :=1;
devise VARCHAR2(6) := 'dollar';
mt NUMBER(20);
BEGIN
mt := convert(r_comm, devise);
dbms_output.put_line(mt);
END;
/
【问题讨论】:
-
看这段代码怎么会有人知道?错误在哪一行?表中的数据是什么?
-
@OldProgrammer 我更新了问题,也许你现在可以发现问题
-
@OldProgrammer ligne 6 指函数调用,函数编译成功
-
@OldProgrammer 问题已经得到解答,也许你想知道问题是什么
标签: oracle plsql stored-functions