Post

Visualizzazione dei post da luglio, 2022

ORA-00600: codice di errore interno, argomenti: [7999], [9], [1], [12]

L'errore è comparso durante la creazione di una tabella TAB2 dalla TAB1 che ha una colonna di tipo LONG RAW e a cui è applicata la funzione TO_LOB. SQL>  Create Table <TAB2>  as     Select   col_a , TO_LOB(col_b)     From <TAB1>; TO_LOB converte una colonna di tipo LONG o LONG RAW in LOB. La versione del db in cui si è verificato l'errore è 11.2.0.4 ed è stato risolto agendo sulla definizione della sequence IDGEN1$ che era impostata ad un valore incrementare troppo basso rispetto al valore di default 50. SQL> alter sequence IDGEN1$  increment by 50;

SEQUENCE: change LAST_NUMBER

  Per aggiornare il valore della sequence ad un valore differente, si può operare in due modi: 1) aggiornare l'incemento come descritto nel post SEQUENCE: aggiornare una sequence ad un valore 2) oppure occorre droppare e ricreare la sequence. DROP SEQUENCE schema_name.sequence_name; CREATE SEQUENCE schema_name.sequence_name START WITH new_value; Oppure eseguire la seguente query: select 'CREATE SEQUENCE '|| sequence_owner ||'.'|| SEQUENCE_NAME || ' START WITH ' || LAST_NUMBER || ';' from dba_sequences where sequence_owner = <schema_name> nd last_number <> 1