0
J'ai une fonction qui supprime le dernier caractère d'un varchar2, mais j'avais besoin de le convertir en tableau de chars en premier. Maintenant, je ne peux pas trouver quelque chose pour le convertir en varchar2.PLSQL - Convertir Char Array à Varchar2
Ma fonction:
DECLARE
TYPE CHAR_ARRAY IS TABLE OF CHAR(1) INDEX BY PLS_INTEGER;
NAME VARCHAR2(100) := '&vname';
NAME_CHAR CHAR_ARRAY;
BEGIN
FOR X IN 1..LENGTH(NAME) LOOP
IF((X = LENGTH(NAME))) THEN
NAME_CHAR(X) := '';
ELSE
NAME_CHAR(X) := SUBSTR(NAME, X , 1);
END IF;
END LOOP;
-- Now I need to convert it back to varchar2
END;
Pourquoi le tableau 'char'? Les chaînes ordinaires sont généralement plus faciles à travailler. De plus, PL/SQL n'a pas d'exigence de syntaxe à double parenthèse après 'if', parce qu'il a' then'. Vous pouvez simplement écrire 'if x = length (name) then'. Bien que vous pourriez probablement travailler sur 'longueur (nom)' une fois au début. –