如何在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 = 要查询的表 

时间: 2024-11-02 04:28:07

如何在oracle中查询所有用户表的表名、主键名称、索引、外键等的相关文章

oracle中使用on delete cascade和on delete set null来建立外键

oracle中使用on delete cascade和on delete set null来建立外键 其面我们介绍了创建外键约束时如果使用oracle默认的创建方式,在删除被参照的数据时,将无法被删除,这一点在oracle9i中给了我们更多灵活的选择,我们可是使用on delete cascade和 on delete set null关键字来决定删除被参照数据时是否要将参照这个数据的那些数据一并删除,还是将那些参照这条数据的数据的对应值赋空. 例如下面这两个表中分别存的时员工的基本信息和公司的

sql-oracle 查询当前用户的所有表

问题描述 oracle 查询当前用户的所有表 SQL> select * from user_tables; 出现 '未选定行' 是什么原因呢? 表中没数据,要描述一个表的命令又该怎么写呢? 解决方案 1.查询表的数目:select count(*) from tabs 2.查询用户拥有哪些表:select * from tabs 3.SELECT * FROM ALL_TABLES WHERE OWNER='用户名'; ----要求是管理员用户 解决方案二: oracle sql查询 当前用户

在oracle中查询xml表列内容显示不全,为什么???

问题描述 在oracle中查询xml表列内容显示不全,为什么??? 建立了一个包含xml列的表,也成功插入了xml项,但是用查询语句显示不全xml的内容,不知道为啥?? CREATE TABLE employees( eid int primary key, einfo xmltype ); insert into employees values(1,XMLType(bfilename('XMLDIR', 'einfoTest.xml'),nls_charset_id('GB2312') ))

如何在ADSI中查询用户属性?_编程10000问

如何在ADSI中查询用户属性?<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> <%Dim x On error resume next'Set x = GetObject("WinNT://kenfilszwin2k/allen")strLDAP="LDAP://kenfilszwin2k/CN=Allen He,OU=kenfils

如何在ORACLE中實現人民幣大寫的轉換

oracle 如何在ORACLE中實現人民幣大寫的轉換 作者:   CCBZZP        ORACLE在實現報表的功能是很強大的, 特別在現實的應用中會經常用到人民幣大小寫轉換的問題, 在此我寫個函數向大家簡單介紹一下, 希望和大家一起探討, 以便共同進步! 共同發展! 1. 函數DX_MONEY() CREATE FUNCTION  DX_MONEY(  MONEY IN NUMBER)RETURN VARCHAR2 AS V_MONEY VARCHAR2(150);RV_MONEY0

关联-关于oracle中查询sql的优化

问题描述 关于oracle中查询sql的优化 在数据库中的某个表中有几百万条数据,现在要用这张表关联别的表去查询,查询速度很慢,如何优化才能使查询速度快一些. 解决方案 先优化SQL,然后再优化业务逻辑.最后优化数据库数据存储.起码得把SQL贴出来看看吧,几百万的数据不算多呀. 解决方案二: oracle的权值查询 解决方案三: 用一个相关联的ID,直接查那个表,这样就简单了!

android-oracle同一数据库中怎样将一个用户下的表导入或复制到另一个 用户中

问题描述 oracle同一数据库中怎样将一个用户下的表导入或复制到另一个 用户中 ** oracle同一数据库中怎样将一个用户下的表导入或复制到另一个 用户中** 解决方案 oracle把一个用户的表数据复制到另一个用户oracle把一个用户下数据库对象的某个权限赋给另一个用户Oracle当前数据库用户访问另一个用户的表 解决方案二: exp owner=a imp fromuser=a touser=b 解决方案三: exp file=路径 full=y owner=用户1 imp fromu

如何在access中查询统计带分号的字符串数据?

问题描述 如何在access中查询统计带分号的字符串数据? 有一表内容大致如下:人员姓名 | 金额甲:乙:丁: | 60甲:乙: | 40乙:丁: | 40丙: | 20求一查询,平均分金额后合计,可得新表如下:人员姓名 | 金额甲 | 40乙 | 60丙 | 20丁 | 40 即原表中第一行甲乙丙三人平分60,乙得20:第二行甲乙二人平分40,乙得20:第三行同理,新表中乙合计得60. 解决方案 你的统计规则是什么,为什么甲是40? 解决方案二: string[] 数据 = { ""

winforms-C#Winfrom中如何在combox中输入首字母下拉表中出现对应汉字

问题描述 C#Winfrom中如何在combox中输入首字母下拉表中出现对应汉字 如题,我在数据库中建立了表,首字母和相应的汉字都有,如何在程序中让combox输入首字母显示出汉字呢,就像12306订票系统一样,在站台名中输入首字母出现汉字. 解决方案 因为你已经有你的数据库表,所以可以参考一下根据拼音首字母进行过滤的combobox关于扩展可以支持拼音首字母查询的ComboBox自定义控件,可以参考支持拼音首字母查询的ComboBox 解决方案二: 参考:http://download.csd