Oracle µÄÊý¾Ýµ¼Èëµ¼³ö¼° Sql Loader (sqlldr) µÄÓ÷¨
ÔÎÄ:http://www.blogjava.net/Unmi/archive/2009/01/05/249956.html
ÔÚ Oracle Êý¾Ý¿âÖУ¬ÎÒÃÇͨ³£ÔÚ²»Í¬Êý¾Ý¿âµÄ±í¼ä¼Ç¼½øÐи´ÖÆ»òÇ¨ÒÆÊ±»áÓÃÒÔϼ¸ÖÖ·½·¨£º
1. A ±íµÄ¼Ç¼µ¼³öΪһÌõÌõ·ÖºÅ¸ô¿ªµÄ insert Óï¾ä£¬È»ºóÖ´ÐвåÈëµ½ B ±íÖÐ
2. ½¨Á¢Êý¾Ý¿â¼äµÄ dblink£¬È»ºóÓà create table B as select * from A@dblink where ...£¬»ò insert into B select * from A@dblink where ...
3. exp A ±í£¬ÔÙ imp µ½ B ±í£¬exp ʱ¿É¼Ó²éѯÌõ¼þ
4. ³ÌÐòʵÏÖ select from A ..£¬È»ºó insert into B ...£¬Ò²Òª·ÖÅúÌá½»
5. ÔÙ¾ÍÊDZ¾ÆªÒªËµµ½µÄ Sql Loader(sqlldr) À´µ¼ÈëÊý¾Ý£¬Ð§¹û±ÈÆðÖðÌõ insert À´ºÜÃ÷ÏÔ
µÚ 1 ÖÖ·½·¨ÔڼǼ¶àʱÊǸöجÃΣ¬ÐèÈýÎå°ÙÌõµÄ·ÖÅúÌá½»£¬·ñÔò¿Í»§¶Ë»áËÀµô£¬¶øÇÒµ¼Èë¹ý³ÌºÜÂý¡£Èç¹ûÒª²»²úÉú REDO À´Ìá¸ß insert into µÄÐÔÄÜ£¬¾ÍÒªÏÂÃæÄÇÑù×ö£º
view source
print?
1.alter table B nologging;
2.insert /* +APPEND */ into B(c1,c2) values(x,xx);
3.insert /* +APPEND */ into B select * from A@dblink where .....;
ºÃÀ²£¬Ç°Ãæ¼òÊöÁË Oracle ÖÐÊý¾Ýµ¼Èëµ¼³öµÄ¸÷ÖÖ·½·¨£¬ÎÒÏëÒ»¶¨»¹Óиü¸ßÃ÷µÄ¡£ÏÂÃæÖØµã½²½² Oracle µÄ Sql Loader (sqlldr) µÄÓ÷¨¡£
ÔÚÃüÁîÐÐÏÂÖ´ÐÐ Oracle µÄ sqlldr ÃüÁ¿ÉÒÔ¿´µ½ËüµÄÏêϸ²ÎÊý˵Ã÷£¬Òª×ÅÖØ¹Ø×¢ÒÔϼ¸¸ö²ÎÊý£º
userid -- Oracle µÄ username/password[@servicename]
control -- ¿ØÖÆÎļþ£¬¿ÉÄܰüº¬±íµÄÊý¾Ý
-------------------------------------------------------------------------------------------------------
log -- ¼Ç¼µ¼ÈëʱµÄÈÕÖ¾Îļþ£¬Ä¬ÈÏΪ ¿ØÖÆÎļþ(È¥³ýÀ©Õ¹Ãû).log
bad -- »µÊý¾ÝÎļþ£¬Ä¬ÈÏΪ ¿ØÖÆÎļþ(È¥³ýÀ©Õ¹Ãû).bad
data -- Êý¾ÝÎļþ£¬Ò»°ãÔÚ¿ØÖÆÎļþÖÐÖ¸¶¨¡£ÓòÎÊý¿ØÖÆÎļþÖв»Ö¸¶¨Êý¾ÝÎļþ¸üÊÊÓÚ×Ô¶¯²Ù×÷
errors -- ÔÊÐíµÄ´íÎó¼Ç¼Êý£¬¿ÉÒÔÓÃËûÀ´¿ØÖÆÒ»Ìõ¼Ç¼¶¼²»ÄÜ´í
rows -- ¶àÉÙÌõ¼Ç¼Ìá½»Ò»´Î£¬Ä¬ÈÏΪ 64
skip -- Ìø¹ýµÄÐÐÊý£¬±ÈÈçµ¼³öµÄÊý¾ÝÎļþÇ°Ãæ¼¸ÐÐÊDZíÍ·»òÆäËûÃèÊö
»¹Óиü¶àµÄ sqlldr µÄ²ÎÊý˵Ã÷Çë²Î¿¼£ºsql loaderµÄÓ÷¨¡£
ÓÃÀý×ÓÀ´ÑÝʾ sqlldr µÄʹÓã¬ÓÐÁ½ÖÖʹÓ÷½·¨£º
1. ֻʹÓÃÒ»¸ö¿ØÖÆÎļþ£¬ÔÚÕâ¸ö¿ØÖÆÎļþÖаüº¬Êý¾Ý
2. ʹÓÃÒ»¸ö¿ØÖÆÎļþ(×÷Ϊģ°å) ºÍÒ»¸öÊý¾ÝÎļþ
Ò»°ãΪÁËÀûÓÚÄ£°åºÍÊý¾ÝµÄ·ÖÀ룬ÒÔ¼°³ÌÐòµÄ²»Í¬·Ö¹¤»áʹÓõڶþÖÖ·½Ê½£¬ËùÒÔÏÈÀ´¿´ÕâÖÖÓ÷¨¡£Êý¾ÝÎļþ¿ÉÒÔÊÇ CSV Îļþ
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
ϵͳ»·¾³£ºWindows 7
Èí¼þ»·¾³£ºVisual C++ 2008 SP1 +SQL Server 2005
±¾´ÎÄ¿µÄ£º±àдһ¸öº½¿Õ¹ÜÀíϵͳ
ÕâÊÇÊý¾Ý¿â¿Î³ÌÉè¼ÆµÄ³É¹û£¬ËäÈ»³É¼¨²»¼Ñ£¬µ«ÊÇ×÷ΪÎÒÓÃVC++ ÒÔÀ´±àдµÄ×î´ó³ÌÐò»¹ÊÇ´«µ½ÍøÉÏ£¬ÒÔ¹©²Î¿¼¡£ÓÃVC++ ×öÊý¾Ý¿âÉè¼Æ²¢²»ÈÝÒ×£¬µ«Ò²²»ÊDz»¿ÉÄÜ¡£ÒÔÏÂÊÇÎҵijÌÐò½çÃæ£¬ºóÃæ ......
sql Á½±í¹ØÁª ¸üÐÂ
update set from Óï¾ä¸ñʽ
SybaseºÍSQL SERVER£ºUPDATE...SET...from...WHERE...µÄÓï·¨£¬Êµ¼ÊÉÏ´ÓÔ´±í»ñÈ¡¸üÐÂÊý¾Ý¡£
ÔÚ SQL ÖУº
Update A SET A.dept =B.name
from A LEFT JOIN B ON B.ID=A.dept_ID ......
¶ÔÓÚÒ»¸öÊý¾Ý¿âÍêÕû±¸·ÝÀ´Ëµ£¬±¸·ÝµÄËٶȺܴó³Ì¶ÈÉÏÈ¡¾öÓÚÏÂÃæÁ½¸öÒòËØ£º¶Á´ÅÅÌÊý¾Ý¡¢ÈÕÖ¾ÎļþµÄÍÌÍÂÁ¿£¬Ð´´ÅÅÌÊý¾ÝÎļþµÄÍÌÍÂÁ¿¡£
ÏÂͼÊDZ¸·Ý¹ý³ÌÖдÅÅ̵ı仯Çé¿ö£º
¶ÁÍÌÍÂÁ¿
¶ÁÍÌÍÂÁ¿µÄ´óСȡ¾öÓÚ´ÅÅ̶ÁÈ¡Êý¾ÝµÄËÙ¶È£¬¶ø´ÅÅ̶ÁÈ¡µÄËÙ¶ÈÓÖÈ¡¾öÓÚÊý¾ÝÎļþÔÚ´ÅÅÌÖеÄλÖá£Òò´Ë£¬Î»ÓÚ²»Í¬ÅÌ·ûÉϲ»Í¬Êý¾Ý¿âÎļþµÄ¶ÁÈ¡Ë ......
´ó¼Ò¶¼ÖªµÀ£¬ÓÃPL/SQLÁ¬½ÓOracle£¬ÊÇÐèÒª°²×°Oracle¿Í»§¶ËÈí¼þµÄ¡£ÓÐûҪÏë¹ý²»°²×°Oracle¿Í»§¶ËÖ±½ÓÁ¬½ÓOracleÄØ£¿
ÆäʵÎÒÒ»Ö±ÏëÕâÑù×ö£¬ÒòΪÕâ¸ö¿Í»§¶ËʵÔÚÌ«ÈÃÈËÌÖÑáÁË£¡£¡£¡²»µ«»á°²×°Ò»¸öJDK£¬¶øÇÒ»¹»á°Ñ×Ô¼º·ÅÔÚ»·¾³±äÁ¿µÄ×îÇ°Ãæ£¬»áÔì³É²»Ð ......