sql >> Database >  >> RDS >> Oracle

Converteer Varchar2 naar Char-array in Oracle

Als je eigenlijk een PL/SQL-verzameling van karakters bedoelt, zou je zoiets kunnen doen als

SQL> ed
Wrote file afiedt.buf

  1  declare
  2    type char_arr is table of char(1) index by pls_integer;
  3    l_str varchar2(100) := 'ABCDEF';
  4    l_arr char_arr;
  5  begin
  6    for i in 1 .. length(l_str)
  7    loop
  8      l_arr(i) := substr( l_str, i, 1 );
  9    end loop;
 10    dbms_output.put_line( l_arr.count );
 11* end;
SQL> /
6

PL/SQL procedure successfully completed.

Zonder de zakelijke vereisten te begrijpen, zou ik echter erg achterdochtig zijn. Als je merkt dat je strings in PL/SQL uit elkaar haalt, betekent dat bijna altijd dat je gegevens in een niet-atomaire vorm hebt opgeslagen en dat je het probleem met het gegevensmodel moet aanpakken.




  1. Docker-compose controleren of mysql-verbinding gereed is

  2. Een manier om een ​​index te laten zoeken naar een leidende %wildcard

  3. MySQL CURRENT_TIMESTAMP bij aanmaken en bijwerken

  4. MYSQL meerdere inserts in codeigniter