终于知道什么叫做constraint了。

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

终于知道什么是constraint了,hoho...偶真是太菜了。

可是只是明白一点点而已,觉得有一点东西把握到了。

其实自己还是不明白,自己学就是很茫然阿。

/primary key

/foreign key

/not null

/unique

/check(?)

contents:

前几天,偶打算删掉SCOTT.dept的一个叫做PK_DEPT的index.

却得到如下错误:

ERROR 位于第 1 行:

ORA-02429: cannot drop index used for enforcement of unique/primary key

好,那就就先删了主键

SQL> select OWNER,CONSTRAINT_NAME,TABLE_NAME from user_constraints;

OWNER                                                        CONSTRAINT_NAME                                      TABLE_NAME

------------------------------------------------------------ ------------------------------------------------------------ ----

SCOTT                                                        PK_DEPT                                              DEPT

SCOTT                                                        PK_EMP                                               EMP

SCOTT                                                        FK_DEPTNO                                            EMP

SQL> alter table dept drop constraints pk_dept;

又是错误

ERROR 位于第 1 行:

ORA-02273: this unique/primary key is referenced by some foreign keys

Foreign keys?什么咚咚?

原来这个东西是联系Dept表跟Emp表的一个约束条件,它把dept的deptno跟emp的deptno联系起来了。

/*这个是很重要的一个概念,一个功能,可我现在还不能理解*/

好,那就把这个Foreign key干掉,这个Foreign key是在emp表上作的,所以需要改动emp先。

SQL> alter table emp drop constraints fk_deptno;

再删主键

SQL> alter table dept drop constraints pk_dept;

搞定。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航