![](/img/trans.png)
[英]How to insert Large clob data(>4K characters) in oracle 10g using jdbc
[英]Oracle insert text more than 4K characters to clob
將超過 4K 的字符插入 clob 是有限制的 我在 Java 中的做法是將長文本切成 4K 字符的塊並與 to_clob() 連接,它工作正常
但是,我的文字中經常包含'' 例如-“abc''def”
當文本在 '' '' 之間被分割時,插入的文本不正確......
例如 - to_clob(“abc') || to_clob(“'def'”) 知道如何解決嗎?
謝謝
在 clob 中插入超過 4K 的字符是有限制的
不,那里沒有。 CHAR
/ VARCHAR2
數據類型有 4000 個字節的(歷史)限制,這包括字符串文字。
'This string literal has a 4000 byte limit.'
這與CLOB
數據類型無關。
我在 Java 中的做法是將長文本切成 4K 字符塊並與
to_clob()
連接,它工作正常
不要那樣做。 使用綁定變量。
String your_string = "A very long string..."
PreparedStatement ps = connection.prepareStatement(
"INSERT INTO table_name(clob_column) VALUES (?)"
);
Clob clob = connection.createClob();
clob.setString(1, your_string);
ps.setClob(1, clob);
或者:
String your_string = "A very long string..."
PreparedStatement ps = connection.prepareStatement(
"INSERT INTO table_name(clob_column) VALUES (?)"
);
ByteArrayInputStream inputStream = new ByteArrayInputStream(your_string.getBytes());
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
ps.setClob(1, inputStreamReader);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.