Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ORACLEÖÐBFILE×ֶεÄʹÓÃ

     ¡¾ ·þÎñÆ÷ѧԺ¡¿ÒòΪ×öÏîÄ¿£¬ÐèҪʹÓÃBFILE×ֶδ洢ͼÏñÎļþ£¬ËùÒÔ½øÐÐÁËһЩÑо¿¡£
¡¡¡¡
¡¡¡¡bfile×Ö¶Îʵ¼ÊµÄÎļþ´æ´¢ÔÚÎļþϵͳÖÐ,×Ö¶ÎÖд洢µÄÊÇÎļþ¶¨Î»Ö¸Õë.bfile¶ÔoracleÀ´ËµÊÇÖ»¶ÁµÄ,Ò²²»²ÎÓëÊÂÎñÐÔ¿ØÖƺÍÊý¾Ý»Ö¸´
¡¡¡¡
¡¡¡¡bfileµÄ»ù±¾²Ù×÷ÈçÏ£º
¡¡¡¡
¡¡¡¡1.ÏÈÔÚoracleÊý¾Ý¿âÖÐÏÂÃæÎÒÃǽ¨Á¢Ò»¸öĿ¼±ðÃû,ÓÃÓÚ½«Îļþ¶¨Î»Ö¸ÕëÓ³Éäµ½Îļþϵͳ£º
¡¡¡¡
¡¡¡¡create DIRECTORY 'tmpdir' AS '/tmp';
¡¡¡¡
¡¡¡¡tmpdir±íʾÂß¼­Ä¿Â¼Ãû£¬'/tmp'ÊÇʵ¼ÊĿ¼¡£ ×¢Òâ¸ÃĿ¼oracleÓ¦¸ÃÓжÁȨÏÞ
¡¡¡¡
¡¡¡¡È»ºó¸ù¾ÝÐèÒªÊÚȨ
¡¡¡¡
¡¡¡¡GRANT READ ON DIRECTORY bfile_dir1 TO scott;
¡¡¡¡
¡¡¡¡½¨Á¢Ò»¸öº¬ÓÐbfile×ֶεıí
¡¡¡¡
¡¡¡¡create table bfiletest(id number(3), fname bfile);
¡¡¡¡
¡¡¡¡½¨Á¢Ò»¸öº¬ÓÐBLOB×ֶεıí
¡¡¡¡
¡¡¡¡create table blobtest(id number(3),ablob blob);
¡¡¡¡
¡¡¡¡2.²åÈëÊý¾Ý
¡¡¡¡
¡¡¡¡ÕâÀïÐèҪʹÓÃbfilenameÀ´½øÐÐbfile×ֶεÄinsert »òÕß update²Ù×÷
¡¡¡¡
¡¡¡¡INSERT INTO bfiletest
¡¡¡¡
¡¡¡¡VALUES (1, BFILENAME ('tmpdir', 'tmptest'));
¡¡¡¡
¡¡¡¡bfilenameµÄ²ÎÊý1ÊÇDIRECTORYÃû£¬²ÎÊý2ÊÇÎļþÃû¡£×¢Ò⣺ÕâÒ»ÐÐÖвåÈëµÄÊÇ
¡¡¡¡
¡¡¡¡Ò»¸öÖ¸Ïò/tmp/tmptestµÄÎļþ¶¨Î»Ö¸ÕëÓ³Éä,²»ÊÇÎļþ±¾Éí¡£
¡¡¡¡
¡¡¡¡3.¶ÁÈ¡bfile
¡¡¡¡
¡¡¡¡Í¨¹ýʹÓÃdbms_lob°ü½øÐпÉÒÔ¶Ôbfile¶ÁÈëµ½blob/clob¶ÔÏóÖвÙ×÷(Ö»¶Á)
¡¡¡¡
¡¡¡¡CREATE OR REPLACE PROCEDURE loadLOBfromBFILE_proc(
¡¡¡¡TID IN NUMBER,rfilename in varchar2,rfiledir in varchar2,upmessage out varchar2)
¡¡¡¡AS
¡¡¡¡Dest_loc BLOB;
¡¡¡¡Src_loc BFILE;
¡¡¡¡BEGIN
¡¡¡¡INSERT INTO BLOBTEST(ID,ABLOB) VALUES(TID,EMPTY_BLOB()) RETURN ABLOB INTO DEST_LOC;
¡¡¡¡
¡¡¡¡Src_loc := BFILENAME(rfiledir,rfilename);
¡¡¡¡
¡¡¡¡/* Èç¹ûbfileÎļþʵ¼Ê´æÔÚ */
¡¡¡¡IF (DBMS_LOB.FILEEXISTS(Src_loc) != 0)
¡¡¡¡THEN
¡¡¡¡/* ´ò¿ªbfileÔ´Îļþ */
¡¡¡¡DBMS_LOB.OPEN(Src_loc, DBMS_LOB.LOB_READONLY);
¡¡¡¡/* ´ò¿ªÄ¿±êblob: */
¡¡¡¡DBMS_LOB.OPEN(Dest_loc, DBMS_LOB.LOB_READWRITE);
¡¡¡¡/*´ÓÎļþÖÐ×°Èë */
¡¡¡¡DBMS_LOB.LOADfromFILE(Dest_loc, Src_loc,DBMS_LOB.GETLENGTH(Src_loc));
¡¡¡¡/* ¼ÇµÃ¹Ø±Õ: */
¡¡¡¡DBMS_LOB.CLOSE(Dest_loc);
¡¡¡¡DBMS_LOB.CLOSE(Src_loc);
¡¡¡¡COMMIT;
¡¡¡¡upmessage :


Ïà¹ØÎĵµ£º

²»Óð²×°Oracle ClientÈçºÎʹÓÃPLSQL Developer

²»Óð²×°Oracle ClientÈçºÎʹÓÃPLSQL Developer
1. ÏÂÔØoracleµÄ¿Í»§¶Ë³ÌÐò°ü£¨30M£©
      Ö»ÐèÒªÔÚOracleÏÂÔØÒ»¸ö½ÐInstant Client PackageµÄÈí¼þ¾Í¿ÉÒÔÁË£¬Õâ¸öÈí¼þ²»ÐèÒª°²×°£¬Ö»Òª½âѹ¾Í¿ÉÒÔÓÃÁË£¬ºÜ·½±ã£¬¾ÍËã֨װÁËϵͳ»¹ÊÇ¿ÉÒÔÓõġ£
      ÏÂÔØµ ......

oracleÖÐtruncate,delete,dropµÄÒìͬµã

truncate,delete,dropµÄÒìͬµã
×¢Òâ:ÕâÀï˵µÄdeleteÊÇÖ¸²»´øwhere×Ó¾äµÄdeleteÓï¾ä
Ïàͬµã:truncateºÍ²»´øwhere×Ó¾äµÄdelete, ÒÔ¼°drop¶¼»áɾ³ý±íÄÚµÄÊý¾Ý
²»Í¬µã:
1. truncateºÍ deleteֻɾ³ýÊý¾Ý²»É¾³ý±íµÄ½á¹¹(¶¨Òå)
dropÓï¾ä½«É¾³ý±íµÄ½á¹¹±»ÒÀÀµµÄÔ¼Êø(constrain),´¥·¢Æ÷(trigger),Ë÷Òý(index); ÒÀÀµÓÚ¸Ã±íµ ......

oracle, stored procedure, cursor

CREATE OR REPLACE PROCEDURE kevin_proc(x varchar) IS
a VARCHAR(20);
b VARCHAR(20);
CURSOR mycur(rn NUMBER) IS SELECT * from t_kevin_test WHERE ROWNUM<rn;
BEGIN
OPEN mycur(10);
LOOP FETCH mycur INTO a,b;
EXIT WHEN mycur%NOTFOUND;
Dbms_Output.put_line('a: '||a);
Dbms_Output.put_line('b: '| ......

Oracle Êý¾ÝÀàÐͼ°´æ´¢·½Ê½

Oracle Êý¾ÝÀàÐͼ°´æ´¢·½Ê½
      Ô¬¹â¶« Ô­´´
      ¸ÅÊö
      ͨ¹ýʵÀý£¬È«Ãæ¶øÉîÈëµÄ·ÖÎöoralceµÄ»ù±¾Êý¾ÝÀàÐͼ°ËüÃǵĴ洢·½Ê½¡£ÒÔORACLE 10GΪ»ù´¡£¬½éÉÜoralce
      10gÒýÈëµÄеÄÊý¾ÝÀàÐÍ¡£ÈÃÄã¶Ôor ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ