﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-JavaSky-文章分类-J2EE</title><link>http://www.blogjava.net/java-hl/category/50653.html</link><description>JavaBird</description><language>zh-cn</language><lastBuildDate>Wed, 18 Jan 2012 13:20:35 GMT</lastBuildDate><pubDate>Wed, 18 Jan 2012 13:20:35 GMT</pubDate><ttl>60</ttl><item><title>Java处理(插入或修改)clob类型数据</title><link>http://www.blogjava.net/java-hl/articles/368713.html</link><dc:creator>JavaBird</dc:creator><author>JavaBird</author><pubDate>Wed, 18 Jan 2012 09:15:00 GMT</pubDate><guid>http://www.blogjava.net/java-hl/articles/368713.html</guid><wfw:comment>http://www.blogjava.net/java-hl/comments/368713.html</wfw:comment><comments>http://www.blogjava.net/java-hl/articles/368713.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/java-hl/comments/commentRss/368713.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/java-hl/services/trackbacks/368713.html</trackback:ping><description><![CDATA[<div><strong>CLOB</strong><strong><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">字段的插入</span></strong> <p>clob<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">类型的数据直接</span>insert<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">可能会因为字符过长而出错</span>,<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">所以要用对象形式插入</span>.</p> <p><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">示例</span>:</p> <p><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">首先</span>,<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">创建一个含</span>CLOB<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">字段的表</span>:</p> <p>create table test (id INTEGER, content clob);</p> <p>&nbsp;</p> <p><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">然后插入空值</span></p> <p>String strSql = &#8220;INSERT INTO TEST(id,content) values(&#8216;0001&#8217;,?) &#8221;;</p> <p>con.setAutoCommit(false);&nbsp;//conn<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">为</span>Connection<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对象</span></p> <p>//<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">创建并实例化一个</span>CLOB<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对象</span></p> <p>CLOB clob = new CLOB((OracleConnection)con);</p> <p><span>&nbsp;&nbsp; clob = oracle.sql.CLOB.createTemporary((OracleConnection)con,true,1);</span></p> <p>//<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对</span>CLOB<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对象赋值</span></p> <p><span>&nbsp;&nbsp; clob.putString(1,formateSingleQuotes(Content)); </span></p> <p><span>&nbsp;&nbsp; OracleConnection OCon = (OracleConnection)con;</span></p> <p><span>&nbsp;&nbsp; OraclePreparedStatement pstmt = (OraclePreparedStatement)OCon.prepareCall(strSql);</span></p> <p><span>&nbsp;&nbsp; pstmt.setCLOB(1,clob);</span></p> <p><span>&nbsp;&nbsp; int i&nbsp;= pstmt.executeUpdate();</span></p> <p><span>&nbsp;&nbsp; pstmt.close();</span></p> <p><span>&nbsp;&nbsp; OCon.commit();</span></p> <p><span>&nbsp;&nbsp; OCon = null;</span></p> <p style=" text-indent: 21pt;">con = null;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p> <p style=" text-indent: 21pt;">Boolean flag = true;</p> <p>if(i &lt;=0)</p> <p>&nbsp;{</p> <p>&nbsp;<span>&nbsp;&nbsp;&nbsp;&nbsp; flag = false;</span></p> <p>&nbsp;}</p> <p>&nbsp;</p> <p>if (flag == true)</p> <p>&nbsp;{</p> <p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.print( "&lt;script&gt;alert('</span><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">成功保存</span>!'); &lt;/script&gt;"); </p> <p>}</p> <p>&nbsp;else</p> <p>&nbsp;{</p> <p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.print( "&lt;script&gt;alert('</span><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">保存数据时出错</span>,<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">请检查你输入的数据格式是否符合要求</span>');self.history.back ();&lt;/script&gt;");</p> <p>&nbsp;} </p> <p>&nbsp;</p> <p><strong><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">注意：</span></strong></p> <p><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">一定不要忘记引入包：</span>import oracle.sql.*,oracle.jdbc.driver.*</p> <p>&nbsp;</p> <p style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt;"><strong>2.<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></strong><strong>CLOB</strong><strong><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">类型的修改</span></strong></p> <p><strong>&nbsp;</strong></p> <p><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对</span>CLOB<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">字段的修改除了</span>sql<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">语句外其他和插入相同</span></p> <p>String strSql = &#8220;UPDATE TEST set content=? Where Id=&#8217;0001&#8217; &#8221;;</p> <p>con.setAutoCommit(false);&nbsp;//conn<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">为</span>Connection<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对象</span></p> <p>//<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">创建并实例化一个</span>CLOB<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对象</span></p> <p>CLOB clob = new CLOB((OracleConnection)con);</p> <p><span>&nbsp;&nbsp; clob = oracle.sql.CLOB.createTemporary((OracleConnection)con,true,1);</span></p> <p>//<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对</span>CLOB<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">对象赋值</span></p> <p><span>&nbsp;&nbsp; clob.putString(1,formateSingleQuotes(Content)); </span></p> <p><span>&nbsp;&nbsp; OracleConnection OCon = (OracleConnection)con;</span></p> <p><span>&nbsp;&nbsp; OraclePreparedStatement pstmt = (OraclePreparedStatement)OCon.prepareCall(strSql);</span></p> <p><span>&nbsp;&nbsp; pstmt.setCLOB(1,clob);</span></p> <p><span>&nbsp;&nbsp; int i&nbsp;= pstmt.executeUpdate();</span></p> <p><span>&nbsp;&nbsp; pstmt.close();</span></p> <p><span>&nbsp;&nbsp; OCon.commit();</span></p> <p><span>&nbsp;&nbsp; OCon = null;</span></p> <p style=" text-indent: 21pt;">con = null;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p> <p style=" text-indent: 21pt;">Boolean flag = true;</p> <p>if(i &lt;=0)</p> <p>&nbsp;{</p> <p>&nbsp;<span>&nbsp;&nbsp;&nbsp;&nbsp; flag = false;</span></p> <p>&nbsp;}</p> <p>&nbsp;</p> <p>if (flag == true)</p> <p>&nbsp;{</p> <p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.print( "&lt;script&gt;alert('</span><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">成功保存</span>!'); &lt;/script&gt;"); </p> <p>}</p> <p>&nbsp;else</p> <p>&nbsp;{</p> <p><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.print( "&lt;script&gt;alert('</span><span style="font-family: 宋体;'Times New Roman';'Times New Roman'">保存数据时出错</span>,<span style="font-family: 宋体;'Times New Roman';'Times New Roman'">请检查你输入的数据格式是否符合要求</span>');self.history.back ();&lt;/script&gt;");</p> <p>&nbsp;} </p></div><img src ="http://www.blogjava.net/java-hl/aggbug/368713.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/java-hl/" target="_blank">JavaBird</a> 2012-01-18 17:15 <a href="http://www.blogjava.net/java-hl/articles/368713.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>