Oracle中给表主键、外键收集

1、创建表的同时创建主键约束

(1)无命名 create table student ( studentid int primary key not null, studentname varchar(8), age int);

(2)有命名 create table students ( studentid int , studentname varchar(8), age int, constraint yy primary key(studentid));

2、删除表中已有的主键约束

(1)无命名可用 SELECT * from user_cons_columns; 查找表中主键名称得student表中的主键名为SYS_C002715 alter table student drop constraint SYS_C002715;

(2)有命名 alter table students drop constraint yy;

3、向表中添加主键约束 alter table student add constraint pk_student primary key(studentid);

4、向表中添加外键约束 ALTER TABLE table_A ADD CONSTRAINT FK_name FOREIGN KEY(id) REFERENCES table_B(id);

ORACLE: 查询(看)表的主键、外键、唯一性约束和索引

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, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = 表名

3、查找表的唯一性约束(包括名称,构成列):
select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'U' and au.table_name = 表名

4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询):
select * from user_constraints c where c.constraint_type = 'R' and c.table_name = 表名

外键约束的列名:
select * from user_cons_columns cl where cl.constraint_name = 外键名称

引用表的键的列名:
select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名

5、查询表的所有列及其属性:
select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 表名

[@more@]

原文地址:https://www.cnblogs.com/mengyuxin/p/4953380.html