资源描述:
《oracle数据库Long类型的存取.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、在ORACLE中可以使用LONG类型保存大文本,但是操作LONG类型的数据和一般的数据类型不同,下面就举例说明如何将数据保存到LONG类型的字段中.保存数据到LONG类型的字段中,下面将使用一个表进行测试,该表的创建语句如下:CREATETABLET_LONGTEST(IDINTEGERNOTNULL,FILENAMEVARCHAR2(100BYTE),CONTENTLONG)LOGGINGNOCACHENOPARALLEL;CREATEUNIQUEINDEXPK_T_LONGTESTONT_L
2、ONGTEST(ID)LOGGINGNOPARALLEL;ALTERTABLET_LONGTESTADD(CONSTRAINTPK_T_LONGTESTPRIMARYKEY(ID));插入LONG类型的数据StringfileName=file.getAbsolutePath();longlength;if(!file.exists()){logger.error("Thefile<"+fileName+">isnotexists");return;}length=file.length();B
3、ufferedReaderbufReader=newBufferedReader(newFileReader(file));Integerid=Integer.valueOf(PubFun1.CreateMaxNo(TEST_LONG_ID,1));PreparedStatementpstmt=con.prepareStatement(INSERT_LONG_SQL);pstmt.setObject(1,id);pstmt.setObject(2,fileName);pstmt.setChara
4、cterStream(3,bufReader,(int)length);intretValue=pstmt.executeUpdate();if(retValue!=1){logger.error("Erroroninsertvalue");}bufReader.close();pstmt.close();INSERT_LONG_SQL的值为:INSERTINTOT_LONGTEST(ID,FILENAME,CONTENT)VALUES(?,?,?)注意需要使用setCharacterStrea
5、m方法设置LONG类型的字段的值.读取LONG类型的数据读取也需要使用Stream的方式来读取,下面的代码片断说明了读取LONG类型的字段的方法.PreparedStatementpstmt=con.prepareStatement(QUERY_LONG_COL_SQL);pstmt.setObject(1,id);ResultSetrs=pstmt.executeQuery();if(rs.next()){Readerreader=rs.getCharacterStream(1);Buffer
6、edReaderbufReader=newBufferedReader(reader);StringBufferstrBuf=newStringBuffer();Stringline;while((line=bufReader.readLine())!=null){strBuf.append(line);strBuf.append("r");}bufReader.close();System.out.println("Thecontentis:"+strBuf.toString());}Q
7、UEYR_LONG_COL_SQL的取值为:SELECTCONTENTFROMT_LONGTESTWHEREID=?更新LONG类型的数据更新LONG类型的方法和插入的代码是一样的,只是SQL语句不同.下面的代码断说明了如何更新LONG类型的数据.(这个例子没有使用T_LONGTEST表)StringReaderreader=newStringReader(xmlString);pstmt=con.prepareStatement(REPORT_MODEL_CONTENT_UPDATE_SQLS
8、TRING);pstmt.setCharacterStream(1,reader,xmlString.length());pstmt.setInt(2,reportModelId);if(pstmt.executeUpdate()==0){logger.error("Erroronupdate");}reader.close();REPORT_MODEL_CONTENT_UPDATE_SQLSTRING的取值为:UPDATEREPORT_MODELSETCONTENT=?WHEREREPORT_