Frage

Tabelle: Kunden

ID      NAME             DATATYPE
NUMBER  VARCHAR2(100)    CLOB

Ich möchte die ändern DATA Säule von CLOB zu `varchar2 (1000)

Ich habe es versuchen ALTER TABLE customers MODIFY DATA VARCHAR2 (1000) Auch

ALTER TABLE customers MODIFY (DATA VARCHAR2 (1000))

Auch

alter table customers  modify
(data VARCHAR2(4000))

Diese funktionieren normalerweise, wenn der Datentyp kein Clob ist, aber ich bekomme eine ORA-22859 Weil ich Oracle Toad/Apex verwende.

War es hilfreich?

Lösung

Sie können dies versuchen:

  1. Fügen Sie eine neue Spalte als VARCHAR2 hinzu

    alter table my_table add (new_column varchar2(1000));

  2. CLOB -Name in Varchar2 -Spalte aktualisieren;

    update my_table set new_column=dbms_lob.substr(old_column,1000,1);

Nach Testen Sie Ihre Daten:

  1. Drop CLOB -Säule

    alter table my_table drop column old_column

  2. Benennen Sie die Spalte varchar2 in die Spaltenname der CLOB um

    alter table my_table rename column new_column to old_column

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top