oracle constraints(3)
oracle constraints Ó¦ÓÃ
oracle constraints¿ÉÒÔÉèÖÃΪÁ¢¼´¼ì²é»òÕßµ±Ê±ÊÂÎñÌύʱ¼ì²é¡£
¿ÉÒÔÔÚ´´½¨Ô¼ÊøµÄʱºòÖ¸¶¨ÊÇdeferrable¡£È»ºóͨ¹ýset constraints xxx set deferred»òÕßimmediate,Ò²¿ÉÒÔÔÚseesion¼¶±ðÉ趨ËùÓÐÔ¼ÊøÎªdeferred»òÕßimmediate(alter seesion set constraints deferred/immediate)¡£
SQL> select t.constraint_name, t.status, t.validated, t.deferrable from user_constraints t;
CONSTRAINT_NAME STATUS VALIDATED DEFERRABLE
------------------------------ -------- ------------- --------------
SYS_C003765 ENABLED VALIDATED NOT DEFERRABLE
SYS_C003768 ENABLED NOT VALIDATED NOT DEFERRABLE
UK_T ENABLED NOT VALIDATED NOT DEFERRABLE
SQL> alter table t2 add primary key(vid) deferrable;
Table altered
SQL>
SQL> select t.constraint_name, t.status, t.validated, t.deferrable from user_constraints t;
CONSTRAINT_NAME STATUS VALIDATED DEFERRABLE
------------------------------ -------- ------------- --------------
SYS_C003765 ENABLED VALIDATED NOT DEFERRABLE
SYS_C003772 ENABLED VALIDATED DEFERRABLE
SYS_C003768 ENABLED NOT VALIDATED NOT DEFERRABLE
UK_T ENABLED NOT VALIDATED NOT DEFERRABLE
SQL> select * from t2;
VID VNAME VSEX
---------- ---------- ----------
1 a y
2 b
3 c x
SQL> insert into t2 values (1,'d','y');
insert into t2 values (1,'d','y')
ORA-00001: Î¥·´Î¨Ò»Ô¼ÊøÌõ¼þ (PORTALDB.SYS_C003772)
SQL> set constraints SYS_C003772 deferred;
Constraints set
SQL> insert into t2 values (1,'d','y');
1 row inserted
SQL> set constraints SYS_C003772 deferred;
Constraints set
SQL> commit;
commit
ORA-02091: ÊÂÎñ´¦ÀíÒÑÖØËã
ORA-00001: Î¥·´Î¨Ò»Ô¼ÊøÌõ¼þ (PORTALDB
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
ËäȻѧϰJavaºÜ¾ÃÁË£¬×Ô¼ºÒ²Á¬½Ó¹ýһЩÊý¾Ý¿â£¬±ÈÈçmysqlÖ®ÀàµÄ£¬Èç½ñÄØ£¬Ò²Ñ§Ï°ÁËÒ»¶Îʱ¼äµÄOracle£¬È»¶øÄØ£¬½ñÌìÊÇÎÒµÚÒ»´ÎÁ¬½ÓOracle£¬ºÙºÙ£¬Ó¦¸Ã»¹²»ËãÌ«³Ù°É¡£
½ñÌìÄØ£¬Óе㱿׾£¬´ó¼ÒĪЦ£¡
ÎÒÕâÊÇÒ»¸ö²éѯÀý×Ó
Ê×ÏÈ£¬Ô ......
2009-12-01 00:41:35
֮ǰ°²×°ÁËoracle 10g£¬ºóÀ´ÎªÁËÔÚC#ÀïÃæÁ¬½Óoracle£¬°²×°ÁËODAC£¬Ö®ºóÁ¬½ÓÊý¾Ý¿âʱ£¬ÌîдÊý¾Ý¿â·þÎñÃû£¬×ÜÊÇ»á³ö´í£¬Á¬½Ó²âÊÔÎÞ·¨Í¨¹ý£¬²»ÌîÊý¾Ý¿â·þÎñÃû£¬µ¹»¹¿ÉÒÔͨ¹ýÁ¬½Ó²âÊÔ
½ñÍíÖÕÓڲ鵽ÔÒòÁË¡£¡£¡£
ϵͳÊôÐÔÄÇÀïµÄ»·¾³±äÁ¿£¬pathÕâÀoracleµÄÁ½¸öĬÈÏ·¾¶£º
d:\oracle\product\10. ......
µÈ´ýʼþµÄÔ´Æð
µÈ´ýʼþµÄ¸ÅÄî´ó¸ÅÊÇ´ÓORACLE 7.0.12ÖÐÒýÈëµÄ£¬´óÖÂÓÐ100¸öµÈ´ýʼþ¡£ÔÚORACLE 8.0ÖÐÕâ¸öÊýÄ¿Ôö´óµ½ÁË´óÔ¼150¸ö£¬ÔÚORACLE 8IÖдóÔ¼ÓÐ220¸öʼþ£¬ÔÚORACLE 9IR2ÖдóÔ¼ÓÐ400¸öµÈ´ýʼþ£¬¶øÔÚ×î½üORACLE 10GR2ÖУ¬´óÔ¼ÓÐ874¸öµÈ´ýʼþ¡£
ËäÈ»²»Í¬°æ±¾ºÍ×é¼þ°²×°¿ÉÄÜ»áÓв»Í¬ÊýÄ¿µÄµÈ´ýʼþ£¬µ«ÊÇÕâЩµÈ´ýÊ ......
oracle Ô¼ÊøµÄ״̬
oracleÔÚ´´½¨Ô¼ÊøºóĬÈÏ״̬ÊÇenabled VALIDATED
SQL> create table T2
2 (
3 VID NUMBER,
4 VNAME VARCHAR2(10) not null,
5 VSEX VARCHAR2(10) not null
6 )
7 /
Table created
SQL> alter table t2 add constraints PK_T primary key (vid); ......