Oracle 中获取数据库、表结构的SQL语句
【摘要】 查找表的所有索引(包括索引名,类型,构成列)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 = ‘SAS_PAGE_TABLE’查找表的主键(包括名称...
- 查找表的所有索引(包括索引名,类型,构成列)
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 = ‘SAS_PAGE_TABLE’ - 查找表的主键(包括名称,构成列)
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 = 要查询的表 - 查找表的唯一性约束(包括名称,构成列)
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 = 要查询的表 - 查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询)
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 = 外键引用表的键名 - 查询表的所有列及其属性
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 = 要查询的表 - 利用Oracle中系统自带的两个视图可以实现查看表中主键信息
select a.constraint_name, a.column_name
from user_cons_columns a, user_constraints b
where a.constraint_name = b.constraint_name
and b.constraint_type = ‘P’ and a.table_name = ‘大写的表名’ - 向表中添加主键
alter table 表名 add constraint 主键名 primary key(列名); - 删除表中已有的主键约束
alter table 表名 drop constraint 主键名;
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)