OracleÖÐBLOB/CLOB×ֶοÉÄÜÓöµ½µÄÎÊÌâ
Blob ²ÉÓõ¥×Ö½Ú´æ´¢£¬Êʺϱ£´æ¶þ½øÖÆÊý¾Ý£¬ÈçͼƬ¡¢ÊÓÆµµÈ¡£
Clob ²ÉÓöà×Ö½Ú´æ´¢£¬Êʺϱ£´æ´óÐÍÎı¾Êý¾Ý¡£
1. ÔÚOracle JDBCÖвÉÓÃÁ÷»úÖÆ¶Ô BLOB/CLOB ½øÐжÁд²Ù×÷£¬ËùÒÔҪעÒâ²»ÄÜÔÚÅú´¦ÀíÖжÁд BLOB/CLOB×ֶΣ¬·ñÔò½«³öÏÖ
Stream type cannot be used in batching Òì³£¡£
2. Oracle BLOB/CLOB ×ֶα¾ÉíÓµÓÐÒ»¸öÓα꣨cursor£©£¬JDBCͨ¹ýÓαê¶ÔBlob/Clob×ֶνøÐвÙ×÷£¬ÔÚBlob/Clob×ֶδ´½¨Ö®Ç°£¬ÎÞ·¨»ñÈ¡ÆäÓαê¾ä±ú£¬»á³öÏÖ
Connection reset by peer: socket write error Òì³£¡£
ÕýÈ·µÄ×ö·¨ÊÇ£ºÊ×ÏÈ´´½¨Ò»¸ö¿Õ Blob/Clob ×ֶΣ¬ÔÙ´ÓÕâ¸ö¿Õ Blob/Clob×ֶλñÈ¡Óα꣬ÀýÈçÏÂÃæµÄ´úÂ룺
PreparedStatement ps = conn.prepareStatement( " insert into PICTURE(image,resume) values(?,?) " );
// ͨ¹ýoralce.sql.BLOB/CLOB.empty_lob()¹¹Ôì¿ÕBlob/Clob¶ÔÏó
ps.setBlob( 1 ,oracle.sql.BLOB.empty_lob());
ps.setClob( 2 ,oracle.sql.CLOB.empty_lob());
ps.excuteUpdate();
ps.close();
// ÔٴζԶÁ³öBlob/Clob¾ä±ú
ps = conn.prepareStatement( " select image,resume from PICTURE where id=? for update " );
ps.setInt( 1 , 100 );
ResultSet rs = ps.executeQuery();
rs.next();
oracle.sql.BLOB imgBlob = (oracle.sql.BLOB)rs.getBlob( 1 );
oracle.sql.CLOB resClob = (oracle.sql.CLOB)rs.getClob( 2 );
// ½«¶þ½øÖÆÊý¾ÝдÈëBlob
FileInputStream inStream = new FileInputStream( " c://image.jpg " );
OutputStream outStream = imgBlob.getBinaryOutputStream();
byte [] buf = new byte [ 10240 ];
int len;
while (len = inStream.read(buf) > 0 ) {
outStream.write(buf, 0 ,len);
}
inStream.close();
outStream.cloese();
// ½«×Ö·û´®Ð´ÈëClob
resClob.putString( 1 , " this is a clob " );
// ÔÙ½«Blob/Clob×ֶθüе½Êý¾Ý¿â
ps = conn.prepareStatement( " update PICTURE set image=? and resume=? where id=? " );
ps.setBlob( 1 ,imgBlob);
ps.setClob( 2 ,resClob);
ps.setInt( 3 , 100 );
ps.executeUpdate();
ps.close();
²Î¿¼×ÊÁÏ£º¿ª·¢ÕßÔÚÏßhttp://www.builder.com.cn/files/list-0-0-50259-1-1.
Ïà¹ØÎĵµ£º
Óï·¨£ºTRANSLATE(expr,from,to)
expr: ´ú±íÒ»´®×Ö·û£¬from Óë to ÊÇ´Ó×óµ½ÓÒÒ»Ò»¶ÔÓ¦µÄ¹ØÏµ£¬Èç¹û²»ÄܶÔÓ¦£¬ÔòÊÓΪ¿ÕÖµ¡£
¾ÙÀý£º
select translate('abcbbaadef','ba','#@') from dual¡¡£¨b½«±»££Ìæ´ú£¬a½«±»£ÀÌæ´ú£©
select translate('abcbbaadef','bad','#@') from dual¡¡£¨b½«±»££Ìæ´ú£¬a½«±»£ÀÌæ´ú£¬d¶ÔÓ¦µÄÖµÊÇ¿Õ ......
Ò»¡¢¹ØÓÚ»ù´¡±í
Oc_COJ^c680758
rd-A6z\&[1R1] H680758
Oracle
10G֮ǰ£¬ÆôÓÃAUTOTRACE¹¦ÄÜÐèÒªÊÖ¹¤´´½¨plan_table±í£¬´´½¨½Å±¾Îª$ORACLE_HOME/rdbms/admin
/utlxplan.sql¡£µ«ÔÚ10gÖУ¬ÒѾĬÈÏ´´½¨ÁËPLAN_TABLE$µÄ»ù±í£¬²¢ÒÔpublicÓû§´´½¨ÁËÏàÓ¦µÄͬÒå´ÊPUBLIC¡£ITPUB¸öÈ˿ռäDR#IlHrT
ITPUB¸ ......
Òì»ú»Ö¸´¹ý³Ì£º
ÔÚrman>run
{
allocate channel ch00 type 'sbt_tape' parms="ENV=(NB_ORA_CLIENT=zjddms1)";
set newname for datafile 1 to '/oradata/zjdms/1.dbf';
......
set newname for datafile 23 to '/oradata/test/23.dbf';
set newname for datafile 24 to '/oradata/test/24.dbf';
restore databas ......
describe TABLE_NAME; --ÃèÊö
----------------------------------------------------------------
create table as select XXXXXX
insert into TABLE_NAME (reac_1,reac_2.....) values(v1,v2)
insert into TABLE_NAME (select * from ..........)
update TABLE_NAME set reac_1=v1,.............. ......
Ò»¡£jobµÄÔËÐÐÆµÂÊÉèÖÃ
1.ÿÌì¹Ì¶¨Ê±¼äÔËÐУ¬±ÈÈçÔçÉÏ8:10·ÖÖÓ£ºTrunc(Sysdate+1) + (8*60+10)/24*60
2.ToadÖÐÌṩµÄ£º
ÿÌ죺trunc(sysdate+1)
ÿÖÜ£ºtrunc(sysdate+7)
ÿÔ£ºtrunc(sysdate+30)
ÿ¸öÐÇÆÚÈÕ£ºnext_day(trunc(sysdate),'SUNDAY')
ÿÌì6µã£ºtrunc(sysdate+1)+6/24
°ë¸öСʱ£ºsysdate+30/1440
3.ÿ¸ö ......