oracle Ô¼Êø(constraint)µÄ¼¸¸ö²ÎÊýµÄСÑо¿
Ê×ÏȸãÇåϼ¸¸ö¸ÅÄ
ORACLEÖУ¬Ô¼Êø·Ödeferred ¸ú immediate 2ÖÖ£º
deferred:Èç¹û Oracle ÔÚÊÂÎñÌá½»£¨commit£©Ê±²Å¶ÔÔ¼ÊøÖ´Ðмì²é£¬Ôò³Æ´ËÔ¼ÊøÊÇÑӳٵģ¨deferred£©¡£Èç¹ûÊý¾ÝÎ¥·´ÁËÑÓ³ÙÔ¼Êø£¬Ìá½»²Ù×÷½«µ¼ÖÂÊÂÎñ±»»Ø¹ö£¨undo£©¡£
immediate:Èç¹ûÔ¼ÊøÊǼ´Ê±µÄ£¨immediate£©£¨·ÇÑӳٵģ©£¬Ôò´ËÔ¼Êø½«ÔÚÓï¾äÖ´ÐнáÊøºó½øÐмì²é¡£Èç¹ûÊý¾ÝÎ¥·´ÁËÑÓ³ÙÔ¼Êø£¬Óï¾ä½«±»Á¢¼´»Ø¹ö¡£
Ò»°ãÇé¿öÏ£¬ÎÒÃÇÓõÄÔ¼Êø³õʼ¶¼ÊÇimmediateÐ͵Ä(ĬÈÏ)£¬¶øÇÒ²»ºÃתΪdeferredÐÍ¡£µ«ÊÇÈç¹û³õʼÊÇdeferrable(ÐèÒªÊÖ¶¯Ö¸¶¨),ÄÇdeferred¸úimmediate 2ÖÖ״̬¿ÉÒÔËæÒâת»»¡£
´ËÍâ£¬Ô¼ÊøÓÐÒÔÏÂ4ÖÖ״̬£º
ENABLE£¨ÆôÓã©È·±£ËùÓÐÊäÈëµÄÊý¾Ý¶¼×ñ´ÓÔ¼Êø£¨constraint£©
DISABLE£¨½ûÓã©×ÜÊÇÔÊÐíÊäÈëÊý¾Ý£¬ÎÞÂÛÊý¾ÝÊÇ·ñ×ñ´ÓÔ¼Êø
VALIDATE£¨ÑéÖ¤£©È·±£ÒÑ´æÔÚµÄÊý¾Ý×ñ´ÓÔ¼Êø
NOVALIDATE£¨ÎÞÑéÖ¤£©ÔÊÐíÒÑ´æÔÚµÄÊý¾Ý²»×ñ´ÓÔ¼Êø
ENABLE VALIDATE Óë ENABLE Ïàͬ¡£Oracle ½«¼ì²éÔ¼Êø£¬²¢±£Ö¤ËùÓÐÊý¾Ý¾ù×ñ´ÓÔ¼Êø¡£
ENABLE NOVALIDATE ±íʾËùÓÐвåÈë»ò±»Ð޸ĵÄÊý¾Ý¶¼±ØÐë×ñ´ÓÔ¼Êø£¬µ«ÔÊÐíÒÑ´æÔÚµÄÊý¾Ý²»×ñ´ÓÔ¼Êø¡£
DISABLE NOVALIDATE Óë DISABLE Ïàͬ¡£Oracle ²»»á¼ì²éÔ¼Êø.
DISABLE VALIDATE ½«½ûÓÃÔ¼Êø£¬ÒƳýÔ¼ÊøÊ¹ÓõÄË÷Òý£¬²¢½ûÖ¹ÐÞ¸ÄÔ¼Êø¼üµÄÊý¾Ý¡£
Ô¼Êø²»ÂÛÄÄÖÖÀàÐÍ£¬ÒªÄܹ»ÉúЧ£¬±ØÐë״̬ÊÇenable²ÅÐС£
SQLPLUS(oracle 10.2.0.1):
--deferred ¸ú immediateµÄ¶Ô±ÈÊÔÑé-----------------------------
SQL> drop table aa purge;
Table dropped.
SQL> create table aa ( id number,name varchar2(20),constraint pk primary key(id));
Table created.
SQL> col constraint_name for a11
SQL> select CONSTRAINT_NAME ,CONSTRAINT_TYPE,TABLE_NAME ,STATUS,DEFERRABLE,DEFERRED,validated from u
ser_constraints where table_name='AA';
CONSTRAINT_ C TABLE STATUS DEFERRABLE DEFERRED VALIDATED
----------- - ----- -------- -------------- --------- -------------
PK P AA ENABLED NOT DEFERRABLE IMMEDIATE VALIDATED
--¿ÉÒÔ¿´µ½£¬Ä¬ÈϵÄÊÇNOT DEFERRABLE£¬ÏÂÃæÎÒÃǽ«ËüתΪimmediateÊÔÊÔ
SQL> set constraint pk immediate;
set constraint pk imme
Ïà¹ØÎĵµ£º
linuxÏÂoracle°²×°£º
Oracle¹«Ë¾Ðû³ÆÔÚLinuxϰ²×°Oracle9iÊý¾Ý¿âÖÁÉÙÒªÓÐ512MBµÄÄÚ´æºÍÖÁÉÙ1GB»òÕßÁ½±¶
ÄÚ´æ´óСµÄ½»»»¿Õ¼ä£¬¶ÔÓÚϵͳÄÚ´æ´óÓÚ2GBµÄ·þÎñÆ÷£¬½»»»¿Õ¼ä¿ÉÒÔ½éÓÚ2GB—4GBÖ®¼ä¡£
Èç¹ûÊÇΪÁËÔÚһ̨½öÓÐ256MÄÚ´æµÄÆÕͨPC»úÉÏÊÔÓÃOracle9 ......
ºÜ¶àÅóÓÑÒªÎÒ°ïÃ¦ÍÆ¼öÒ»ÏÂOracleµÄÈëÃÅÊé¼®£¬Äܹ»Á˽âOracleµÄ»ù±¾¸ÅÄî¡¢»ù±¾ÖªÊ¶µÄÄÇÖÖ¡£
ÎÒ¾ÍÃâΪÆäÄÑ£¬ÍƼö¼¸±¾¡£
Ê×ÏÈÎÒÏëÇ¿µ÷µÄÒ»µãÊÇ£¬ÈκÎÒ»±¾ÏµÍ³µÄOracleÊé¼®Ö»ÒªÈÏÕæ¶ÁÏÂÀ´£¬¶¼»áÓв»´íµÄÊÕ»ñ£¬¶ÁÊé×î¼É»äµÄÊÇ»¢Í·Éßβ£¬Ç³³¢ÔòÖ¹¡£
1.µÚÒ»±¾ÒªÍƼö¸ø´ó¼ÒµÄÊÇOracleµÄ¸ÅÄîÊֲᣬÕâ±¾ÊÖ²áÊÇÎÞÊýDBAѧϰµÄÆðµã£ ......
·½°¸Ò»£º
ÐÂ×°ÁËϵͳºó£¬·¢ÏÖÔÚµ÷ÊÔ³ÌÐòʱTOMCATÌáʾ8080¶Ë¿ÚÒѱ»Õ¼Óã¬ÓÚÊÇÔËÐÐNETSTAT -ANO²é¿´¶Ë¿ÚʹÓÃÇé¿ö£¬·¢ÏÖ8080¶Ë¿Ú±»ORACLEµÄ¼àÌýÆ÷¸øÕ¼ÓÃÁË£¬ÓÚÊǽáºÏÉÏÍø²éµ½·½·¨£¬½«ORACLE XDBµÄHTTP·þÎñ¶Ë¿Ú¸Ä³É8081£¬ÎÊÌâ½â¾ö¡£
×ܽáһϿɽâ¾öµÄ·½ ......
trunc()º¯ÊýÓÐÁ½ÖÖÓ÷¨ 1£ººóÃæ¸úÈÕÆÚ 2£º ºóÃæ¸úÊý×Ö
A£º SELECT a.times,to_date(a.times,'yyyymmdd'),trunc(to_date(a.times,'yyyymmdd'),'month') from dmf_loan_limit a
ÏÔʾµÄ½á¹ûΪ£º
1 20080131 2008-1-31 2008-1-1
2 20080131 &nb ......
Êø£¬Ë÷Òý
1¡¢²éÕÒ±íµÄËùÓÐË÷Òý£¨°üÀ¨Ë÷ÒýÃû£¬ÀàÐÍ£¬¹¹³ÉÁУ©£º
select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = Òª²éѯµÄ±í
2¡¢²éÕÒ±íµÄÖ÷¼ü£¨°üÀ¨Ãû³Æ£¬¹¹³ÉÁУ©£º
select cu.* from user_cons_columns cu ......