Voglio creare uno script di inserimento che verrà utilizzato solo per inserire un record in una tabella.Come scrivere lo script di inserimento di Oracle con un campo come CLOB?
Ha 5 colonne e una di queste è di tipo CLOB.
Ogni volta che provo, dice che non è possibile inserire la stringa è così lunga. maggiore di 4000.
Ho bisogno di una dichiarazione di inserimento con clob come un campo.
INSERT INTO tbltablename
(id,
NAME,
description,
accountnumber,
fathername)
VALUES (1,
N'Name',
clob'some very long string here, greater than 4000 characters',
23,
'John') ;
Questa è una buona risposta per CLOB fino a 32'000 caratteri. Per i CLOB più grandi, è necessario creare un CLOB temporaneo (vedere il pacchetto DBMS_LOB), aggiungere i dati in blocchi di 32'000 e inserire il CLOB temporaneo nella tabella. – Codo
@codo, questo è davvero un buon punto, ma in questo esempio dbms_lob non era necessario - almeno in 11r1 (e non avrei dovuto impostare ReallyBigTextString come VARCHAR2 (32000) - Modificherò l'esempio sopra. – Harrison
You ' L'uso di DBMS_LOB probabilmente non è necessario, ma se non usi una stringa artificiale, come fai ripetendo la stessa sottostringa ancora e ancora, allora sei limitato dalla dimensione della dichiarazione/inizio/Fine blocco: con una certa dimensione (circa 100 K), viene visualizzato un messaggio di errore, quindi devi dividere la tua lunga stringa in blocchi e dividerla su più blocchi di dichiarazione/inizio/fine. È piuttosto difficile. – Codo