ѧϰ¡¶Oracle 9i10g±à³ÌÒÕÊõ¡·µÄ±Ê¼Ç (Îå)
1.¾¡¿ÉÄܵØÊ¹Óð󶨱äÁ¿ ²»Óÿª¹ØCURSOR_SHARING=FORCE
Èç¹ûÄãÔ¸Ò⣬Õâ¸öÌØÐÔ»áʵÏÖÒ»¸ö×Ô¶¯°ó¶¨Æ÷£¨auto-binder£©¡£
Èç¹ûÓÐÒ»¸ö²éѯ±àдΪSELECT * from EMP WHERE EMPNO = 1234£¬×Ô¶¯°ó¶¨Æ÷»áÇÄÎÞÉùÏ¢µØ°ÑËü¸Äд³É
SELECT * from EMP WHERE EMPNO = :x¡£ÕâȷʵÄܶ¯Ì¬µØ´ó´ó¼õÉÙÓ²½âÎöÊý£¬²¢¼õÉÙÇ°ÃæÌÖÂ۵Ŀâãŵȴý
ʱ¼ä——µ«ÊÇ£¨·²ÊÂ×ÜÓиö“µ«ÊÇ”£©£¬Ëü¿ÉÄÜÓÐһЩ¸±×÷Óá£Óα깲ÏíµÄÒ»¸ö³£¼û¸±×÷ÓÃÈçÏÂËùʾ£º
ops$tkyte@ORA10G> select /* TAG */ substr( username, 1, 1 )
2 from all_users au1
3 where rownum = 1;
S
-
B
ops$tkyte@ORA10G> alter session set cursor_sharing=force;
Session altered.
ops$tkyte@ORA10G> select /* TAG */ substr( username, 1, 1 )
2 from all_users au2
3 where rownum = 1;
SUBSTR(USERNAME,1,1)
ÕâÀïµ½µ×·¢ÉúÁËʲô£¿ÎªÊ²Ã´µ½µÚ¶þ¸ö²éѯʱSQL*Plus ±¨¸æµÄÁÐͻȻ±äµÃÕâô´ó£¿ÒªÖªµÀ£¬Õ⻹ÊÇ
ͬһ¸ö²éѯѽ£¡Èç¹û²é¿´Ò»ÏÂÓα깲ÏíÉèÖÃΪÎÒÃÇ×öÁËЩʲô£¬ÔÒò¾Í»áºÜÇå³þÁË£¨»¹»áÃ÷°×ÆäËûһЩÎÊ
Ì⣩£º
Óα깲Ïí»áɾ³ý²éѯÖеÄÐÅÏ¢¡£ËüÕÒµ½Ã¿Ò»¸öÖ±½ÓÁ¿£¨literal£©£¬°üÀ¨ÄÚÖÃÇó×Ó´®º¯Êý£¨substr£©µÄ
²ÎÊý£¬Ö±½ÓÁ¿¾ÍÊÇÎÒÃÇʹÓõij£Á¿¡£Ëü°ÑÕâЩֱ½ÓÁ¿´Ó²éѯÖÐɾ³ý£¬²¢´úÖ®Ò԰󶨱äÁ¿¡£SQL ÒýÇæÔÙÒ²²»
ÖªµÀÕâ¸öÁÐÊdz¤¶ÈΪ1 µÄ×Ó´®£¬ËüµÄ³¤¶ÈÊDz»È·¶¨µÄ¡£ÁíÍ⣬¿ÉÒÔ¿´µ½where rownum = 1 ÏÖÔÚÒ²ÒѾ°ó¶¨¡£
¿´ÉÏÈ¥ËÆºõ²»´í£»²»¹ý£¬ÓÅ»¯Æ÷°ÑÒ»¸öÖØÒªµÄÐÅÏ¢Ò²Ò»²¢É¾³ýÁË¡£Ëü²»ÖªµÀ“Õâ¸ö²éѯ½«»ñȡһÐД£»ÏÖÔÚ
Ö»ÈÏΪ“Õâ¸ö²éѯ½«·µ»ØÇ°N ÐУ¬¶øN ¿ÉÄÜÊÇÈκÎÖµ”¡£Êµ¼ÊÉÏ£¬Èç¹û¼ÓÉÏSQL_TRACE=TRUE ºóÔÙÔËÐÐÕâЩ
²éѯ£¬Äã»á·¢ÏÖÿ¸ö²éѯʹÓõIJéѯ¼Æ»®¶¼²»Í¬£¬ËüÃÇÍê³ÉµÄ¹¤×÷Á¿Ò²´óÏྶͥ¡£¿¼ÂÇÒÔϲéѯ£º
------------------------------
B
ops$tkyte@ORA10G> select sql_text from v$sql
2 where sql_text like 'select /* TAG */ %';
SQL_TEXT
-------------------------------------------------------------------------------
select /* TAG */ substr( username, 1, 1 ) from all_users au1 where rownum = 1
select /* TAG */ substr( username, :"SYS_B_0", :"SYS_B_1" ) from all_users au2 where
rownum = :"SYS_B_2"
select /* TAG */ substr( username, 1, 1 )
from all_users au1
where rownu
Ïà¹ØÎĵµ£º
INÌõ¼þ
ÓÃINÌõ¼þÔÚÖ¸¶¨µÄÒ»×éÖµÖнøÐвâÊÔ¡£INÌõ¼þÒ²¾ÍÊÇ ³ÉÔ±Ìõ¼þ¡£
ÔÚ»ÃµÆÆ¬µÄÀý×ÓÖÐÏÔʾËùÓоÀíºÅΪ100¡¢101»ò201µÄ¹ÍÔ±µÄemployee numbers, last names, salariesºÍ¾ÀíµÄemployee numbers¡£
ÔÚINÌõ¼þÖпÉÒÔʹÓÃÈκÎÊý¾ÝÀàÐÍ¡£ÏÂÃæµÄÀý×Ó´ÓEMPLOYEES±í·µ»Ø¹ÍÔ±ÐÅÏ¢ÐУ¬ÕâЩ¹ÍÔ±µÄÃû×Ö°üÀ¨ÔÚWHERE×Ó¾äµÄÃû×ÖÁÐ ......
ËäÈ»ÍøÉÏÓкܶ࣬µ«»¹ÊÇÔÚÕâÀï¼ÇÏ·½±ã²éÕÒ£º
SELECT i.ksppinm NAME, i.ksppity TYPE, v.ksppstvl VALUE, v.ksppstdf isdefault
from x$ksppi i, x$ksppcv v
WHERE i.indx = v.indx
AND i.ksppinm LIKE '\_%&par%' ESCAPE '\';
......
SQL*Loader ÓÃÓÚ½«´óÁ¿Êý¾Ý×°ÈëÊý¾Ý¿â¡£
¢Å¡¢¶¨¿íÊý¾Ý
´´½¨Êý¾ÝÎļþcontrol.txt£º
aaa,bbb
ccc,ddd
eee,fff
´´½¨¿ØÖÆÎļþcontrol.ctl£º
load data
infile 'c:\loader.txt'
append
into table tester.mm(
m1 position(1:3) char,
m2 position(5:7) char)
ÅúÁ¿¼ÓÔØÊý¾Ý£º
sqlldr tester/test control=c:\loade ......
1.¶à°æ±¾£º¶ÁÒ»Ö²éѯ ·Ç×èÈû²éѯ
Oracle ²ÉÓÃÁËÒ»ÖÖ
¶à°æ±¾¡¢¶ÁÒ»Ö£¨read-consistent£©µÄ²¢·¢Ä£ÐÍ¡£ÔÙ´Î˵Ã÷£¬ÎÒÃǽ«ÔÚµÚ7 Õ¸üÏêϸµØ½éÉÜÓйصļ¼Êõ¡£
²»¹ý£¬ÊµÖÊÉϽ²£¬Oracle ÀûÓÃÕâÖÖ»úÖÆÌṩÁËÒÔÏÂÌØÐÔ£º
¶ÁÒ»Ö²éѯ£º¶ÔÓÚÒ»¸öʱ¼äµã£¨point in time£©£¬²éѯ»á²úÉúÒ»ÖµĽá¹û¡£
·Ç×èÈû²éѯ£º²éѯ²»» ......
1.Êý¾Ý¿â¶ÀÁ¢ÐÔ
½«Ó¦ÓôÓÊý¾Ý¿âA ÒÆÖ²µ½Êý¾Ý¿âB ʱ£¬ÎÒʱ³£Óöµ½ÕâÖÖÎÊÌ⣺ӦÓÃÔÚÊý¾Ý¿âA ÉÏÔ±¾ÎÞи¿É»÷£¬µ½ÁË
Êý¾Ý¿âB ÉÏÈ´²»Äܹ¤×÷£¬»òÕß±íÏֵúÜÀëÆæ¡£¿´µ½ÕâÖÖÇé¿ö£¬ÎÒÃǵĵÚÒ»¸öÏë·¨ÍùÍùÊÇ£¬Êý¾Ý¿âB ÊÇÒ»¸ö
“²»ºÃµÄ”Êý¾Ý¿â¡£¶øÕæÕýµÄÔÒòÆäʵÊÇÊý¾Ý¿âB µÄ¹¤×÷·½Ê½ÍêÈ«²»Í¬¡£Ã»ÓÐÄĸöÊý¾Ý¿âÊÇ´íµÄ ......