怎么知道主键约束的名字有没有重复,或者有什么好的主键约束命名方法?
发现不同表的主键约束名称是不能相同的,那我们以后写主键名的时候怎么知道以前有没写过这个主键,或者有什么好的命名方法?
代码如下:
SQL> select * from dba_constraints where constraint_name='PK_ID1_ID2';
OWNER CONSTRAINT_NAME CONSTRAINT_TYPE TABLE_NAME
-------------------------------------------------------------------------------- ------------------------------ ---------------
SYS PK_ID1_ID2 P TB26_5
//这是 tb26_5表里的主键约束 :pk_id1_id2
SQL> alter table tb26_6 add constraint pk_id1_id2 primary key (id1,id2);
alter table tb26_6 add constraint pk_id1_id2 primary key (id1,id2)
ORA-02264: 名称已被一现有约束条件占用
SQL> alter table tb26_6 add constraint pk_test1_id1_id2 primary key (id1,id2);
Table altered
//tb26就不能直接增加名为pk_id1_id2的主键约束,换个名字就行。