sql >> Database teknologi >  >> RDS >> Oracle

Sådan indsætter du en lang streng i CLOB-datatypen i Oracle

Et simpelt eksempel er givet nedenfor for at indsætte en lang streng i CLOB-datatypen i Oracle. Du kan ikke indsætte data direkte i CLOB-datatypen, du skal bruge funktionen Empty_Clob() med returnerende klausul i insert-sætningen og derefter bruge dbms_lob.write procedure for at skrive dataene. For hvis du vil prøve at indsætte en lang streng direkte i CLOB-kolonnen, får du ORA-01704:string literal too long error mens du indsætter dataene.

Her er PL SQL-blokeksemplet til at indsætte en lang streng i en tabel med CLOB-kolonne.

[code type="SQL"] DECLARE
v_clob   CLOB;
BEGIN
INDSÆT I A_CLOB_TABLE (srlno, c_data)
VÆRDI (123, EMPTY_CLOB ())
RETURNERING c_data
INTO v_clob;

DBMS_LOB.write (v_clob,
LENGTH ('giv en lang streng her'),
1,
'giv en lang streng her');
COMMIT;
END;[/kode]

  1. ASCII()-funktion i Oracle

  2. Hvordan laver du date-matematik, der ignorerer året?

  3. Hvordan beregner jeg en løbende total i SQL uden at bruge en markør?

  4. Sådan finder du alle afhængigheder af en tabel i sql server