Arbeiten mit sehr großen text Daten-und CLOB-Spalte

Laut Dokumentation CLOB-und NCLOB-Datentyp Spalten, können Sie speichern bis zu 8 Terabyte von Zeichendaten.

Habe ich text, der enthält 100 000 Zeichen, wie kann ich die Abfrage wie diese:

UPDATE my_table SET clob_column = 'text, which contains 100 000 characters' 
WHERE id = 1

?

Ob in text -, Zeichen-Zählung ist bis zu 32767, es ist möglich, verwenden Sie PL/SQL anonymen block:

DECLARE
   myvar VARCHAR2(15000);
BEGIN
    myvar := 'text, which contains 100 000 characters';
    UPDATE my_table SET clob_column = myvar
    WHERE id = 1;
    ....
 END; 

Was ist die Lösung, wo der text ist sehr umfangreich und enthält zum Beispiel 100 000 Zeichen ?

update

Ich versuche mit dbms_lob.append:

    create table t1 (c clob);

    declare
      c1 clob;
      c2 clob;
    begin
      c1 := 'abc';
      c2 := 'text, which contains 100 000 characters';
      dbms_lob.append(c1, c2);
      insert into t1 values (c1);
    end;

Obwohl, habe auch Fehler: string literal too long.

Bin ich etwas falsch ?

Woher diese Daten kommen? Eingabe 100 Zeichen wäre eine schlechte Wahl, also gerade SQL oder anonyme PL/SQL-block ist keine gute Idee. Wenn die Daten auf Dateien, die Sie verwenden können UTL_FILE direkt. Wenn die Daten stammen aus einer Anwendung, die Sie verwenden können, welche Sprache es geschrieben ist, um die Interaktion mit dem clob-Objekte direkt.
Vielen Dank für die Antwort, ich bin gerade brauchen, um große Geschäft text in eine clob-Spalte

InformationsquelleAutor OTAR | 2013-12-16

Schreibe einen Kommentar