oracle µÄDMLÃüÁîµÄÏêϸ´¦Àí¹ý³Ì
ÔÎĵØÖ·£ºhttp://book.csdn.net/bookfiles/732/10073222578.shtml
¶ÔÓÚDMLÓï¾äÀ´Ëµ£¬Ö»ÒªÐÞ¸ÄÁËÊý¾Ý¿é£¬OracleÊý¾Ý¿â¾Í»á½«ÐÞ¸ÄÇ°µÄÊý¾Ý±£ÁôÏÂÀ´£¬±£´æÔÚundo segmentÀ¶øundo segmentÔò±£´æÔÚundo±í¿Õ¼äÀï¡£´ÓOracle 9iÆð£¬ÓÐÁ½ÖÖundoµÄ¹ÜÀí·½Ê½£º×Ô¶¯Undo¹ÜÀí£¨Automatic Undo Management£¬¼ò³ÆAUM£©ºÍÊÖ¹¤Undo¹ÜÀí£¨Manual Undo Management£¬¼ò³ÆMUM£©¡£Oracle 9i֮ǰֻÄÜʹÓÃMUM£¬¶øÇÒÔÚMUMÖУ¬undo segmentÓÖ½Ð×örollback segment¡£´ÓOracle 9iÆð£¬Oracle¾Í½¨ÒéʹÓÃAUM£¬¶ø²»Ó¦ÔÙʹÓÃMUMÁË¡£
7.1 DMLÓï¾äÓëundo
µ±ÎÒÃÇ·¢³öÒ»ÌõDML£¨±ÈÈçupdate t set col1='A' where col1='B'£©Óï¾äʱ£¬ÆäÖ´Ðйý³Ì¿É´óÖ¸ÅÀ¨ÎªÒÔϼ¸²½¡£
1. ÔÚshared poolÀï½øÐнâÎö£¬´Ó¶øÉú³ÉÖ´Ðмƻ®¡£¾ßÌå½âÎö¹ý³Ì¼ûµÚ5Õ¡£
2.¼ÙÉè¸ù¾ÝÖ´Ðмƻ®£¬µÃ³öcol1='B'µÄ¼Ç¼´æ·ÅÔÚ10ºÅÊý¾ÝÎļþµÄ54ºÅÊý¾Ý¿éÀï¡£
3. ·þÎñÆ÷½ø³ÌÔÚbuffer cacheÀïÕÒÒ»¸ö¿ÉÓõÄundoÊý¾Ý¿é£¬Èç¹ûûÓз¢ÏÖ£¬Ôòµ½undo±í¿Õ¼äÀïÕÒÒ»¸ö¿ÉÓõÄundo¿é£¬²¢µ÷Èëbuffer cache¡£¼ÙÉè»ñµÃµÄundoÊý¾Ý¿éºÅΪ24ºÅ£¬Î»ÓÚ11ºÅundoÊý¾ÝÎļþÀï¡£
4. ½«¸Ä±äÇ°µÄÖµ£¬Ò²¾ÍÊÇA·ÅÈë11ºÅundoÊý¾Ý¿é¡£
5. ÓÉÓÚundoÊý¾Ý¿é·¢ÉúÁ˱仯£¬ÓÚÊDzúÉúÖØ×ö¼Ç¼£¬¼ÙÉèÖØ×ö¼Ç¼ºÅΪ120¡£
ÐкŠÊÂÎñid file# block# row column value
120 T1 24 11 10 col1 A
6.ÔÚbuffer cacheÀïÕÒµ½54ºÅÊý¾Ý¿é¡£Èç¹ûûÓз¢ÏÖ£¬Ôò´Ó10ºÅÊý¾ÝÎļþÀïµ÷Èë¡£
7. ½«¸Ä±äºóµÄÖµ£¬Ò²¾ÍÊÇB·ÅÈë54ºÅÊý¾Ý¿é¡£
8. ÓÉÓÚÊý¾Ý¿é·¢ÉúÁ˱仯£¬ÓÚÊDzúÉúÖØ×ö¼Ç¼£¬¼ÙÉèÖØ×ö¼Ç¼ºÅΪ121¡£
ÐкŠÊÂÎñid file# block# row column value
121 T1 10 54 10 col1 &n
Ïà¹ØÎĵµ£º
declare
sqlstring varchar2(100);
emprow emp_bak%rowtype;
myno emp_bak.empno%type;
begin
--sqlstring:='create table emp_bak as select * from emp';
sqlstring:='select * from emp_bak where empno=:myno and sal>:mysal';
myno:='&ÇëÊäÈëÔ±¹¤±àºÅ';
--¶¯Ì¬SQ ......
ORACLEÅàѵ(OCA)ÈÏÖ¤½éÉÜ
Oracle10g Certified Associate (OCA) Oracle ÈÏ֤רԱ¡£
¿¼ÊԳɼ¨Í¨¹ýÄÜ»ñµÃOracle¹«Ë¾ÎªÄú°ä·¢µÄÈ«ÇòÈÏÖ¤µÄÓ¢ÎÄOCAÖ¤Êé¡£OCAÓÉOracle¹«Ë¾³öÌâ¡£
¸ÃÖ¤Êé¿É×÷Ϊ¸÷ÆóÊÂÒµµ¥Î»Êý¾Ý¿â¹ÜÀíÈËÔ±ÉϸڵÄÒÀ¾Ý¡£
Ä¿Ç°ÒѳÉΪ¸÷IT¹«Ë¾¼°Ïà¹ØÆóÒµÕùÏྺƸµÄÊý¾Ý¿â¹ÜÀíά»¤È˲ţ¬ÊÇÊý¾Ý¿âά»¤¹ÜÀíÈËÔ±(DBA) ......
´Óoracle 9i ¿ªÊ¼£¬ÌṩÁËÒ»¸ö½Ð×ö“¹ÜµÀ»¯±íº¯Êý”µÄ¸ÅÄ¿ÉÒÔÀûÓùܵÀ»¯À´·µ»Ø±íº¯Êý¡£
µ«ÕâÖÖÀàÐ͵ĺ¯Êý£¬±ØÐë·µ»ØÒ»¸ö¼¯ºÏÀàÐÍ£¬ÇÒ±êÃ÷ pipelinedÒÔ¼°²»ÄÜ·µ»Ø¾ßÌå±äÁ¿£¬¶øÊÇÒÔÒ»¸ö¿Õ return ·µ»Ø!
Õâ¸öº¯ÊýÖУ¬Í¨¹ý pipe row () Óï¾äÀ´ËͳöÒª·µ»ØµÄ±íÖеÄÿһÐÐ
ÔÚµ÷ÓÃÕâ¸öº¯ÊýµÄʱºò£¬Í¨¹ý table() ¹Ø¼ ......
ÔÚÊý¾Ý¿âÖо³£ÒªºÏ²¢×Ö·û´®£¬¶øºÏ²¢×Ö·û´®µÄ·½·¨Óкܶ࣬ÏÖÔÚ×ܽáÈçÏ£º
--´´½¨»á»°¼¶ÁÙʱ±í
create global temporary table TMPA
(
ID INTEGER,
NAME VARCHAR2(10)
)
on commit preserve rows;
--²åÈë¼Ç¼
insert into tmpa select 1,'aa' from dual;
insert into tmpa select 1,'bb ......