首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >连接oracle元数据表

连接oracle元数据表
EN

Stack Overflow用户
提问于 2020-02-25 14:20:01
回答 2查看 59关注 0票数 0

我正在尝试连接元数据表,以查询表上的统计信息,如触发器计数、序列、包、过程、视图等,但我找不到连接表的键。下面是我的问题

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT * 
FROM user_constraints   a
    JOIN user_tables    b ON a.table_name = b.table_name
    JOIN user_triggers  c ON a.table_name = c.table_name;

我想执行一个大型查询,从所有主要的元数据表中提取所有数据,谢谢

EN

回答 2

Stack Overflow用户

发布于 2020-02-25 15:50:13

这里是一个开始,展示了约束、索引和触发器……

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT   t.owner,
         t.table_name,
         -- Constraints
        ( SELECT count(*) 
          FROM   all_constraints c
          WHERE  c.owner = t.owner
          AND    c.table_name = t.table_name 
          AND    c.constraint_type = 'P' ) primary_key_constraints,
        ( SELECT count(*) 
          FROM   all_constraints c
          WHERE  c.owner = t.owner
          AND    c.table_name = t.table_name 
          AND    c.constraint_type = 'R' ) foreign_key_constraints,
        ( SELECT count(*) 
          FROM   all_constraints c
          WHERE  c.owner = t.owner
          AND    c.table_name = t.table_name 
          AND    c.constraint_type = 'U' ) unique_constraints,
        ( SELECT count(*) 
          FROM   all_constraints c
          WHERE  c.owner = t.owner
          AND    c.table_name = t.table_name 
          AND    c.constraint_type = 'C' ) check_constraints,
        ( SELECT count(*) 
          FROM   all_constraints c
          WHERE  c.owner = t.owner
          AND    c.table_name = t.table_name 
          AND    c.constraint_type NOT IN ('P','R','U', 'C') ) other_constraints,
          -- Indexes
        ( SELECT count(*)
          FROM   all_indexes i
          WHERE  i.table_owner = t.owner
          AND    i.table_Name = t.table_name
          AND    i.uniqueness = 'UNIQUE' ) unique_indexes,
        ( SELECT count(*)
          FROM   all_indexes i
          WHERE  i.table_owner = t.owner
          AND    i.table_Name = t.table_name
          AND    i.uniqueness = 'NONUNIQUE' ) nonunique_indexes,
        -- Triggers
        ( SELECT count(*)
          FROM   all_triggers tr
          WHERE  tr.table_owner = t.owner
          AND    tr.table_name = t.table_Name ) triggers
FROM     all_tables t
WHERE    t.table_name = 'MY_FAVORITE_TABLE';

您可以使用要连接的(REFERENCED_OWNERREFERENCED_NAMEREFERENCED_TYPE)列使用DBA_DEPENDENCIES添加包和视图等。但这只会计算直接引用该表的对象。例如,它不会计算通过同义词引用该表的包。例如,它不会计算引用了表的视图的包(尽管视图会被计算在内)。

票数 0
EN

Stack Overflow用户

发布于 2020-02-25 19:18:31

试试这个:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-- This SQL will show all dependent objects for a table including FK references and index references
-- =================================================================================================
-- constraint references
select to_char(sysdate, 'DD-MON-YYYY') date_evaluated
, cons.owner ||'.'|| cons.table_name || ' (TABLE)' as object
, 'FK Reference to' relationship
, col.owner ||'.'|| col.table_name || ' (TABLE)' as referenced_object
, cons.owner owner
, cons.table_name name
, 'TABLE' type
, col.owner referenced_owner
, col.table_name referenced_name
, 'TABLE' referenced_type
from dba_cons_columns      col
,    dba_constraints       cons
where 1=1
  and cons.owner = nvl(:object_owner, cons.owner)
  and cons.table_name = nvl(:object_name, cons.table_name)
  and cons.r_owner = col.owner
  and cons.r_constraint_name = col.constraint_name
union
-- object references from dba_dependencies
select /*+ MATERIALIZE */ to_char(sysdate, 'DD-MON-YYYY') date_evaluated
, referenced_owner || '.' || referenced_name || '(' || referenced_type || ')' as object
, 'Referenced in' relationship
, owner || '.' || name || '(' || type || ')' as referenced_object
, referenced_owner
, referenced_name
, referenced_type
, owner
, name
, type
from dba_dependencies
where 1=1
  and name not like 'BIN$%'
  and referenced_name not like 'BIN$%'
  and type in ('TABLE', 'MATERIALIZED VIEW', 'VIEW', 'PACKAGE', 'TRIGGER', 'INDEX')
  and referenced_type in ('TABLE', 'MATERIALIZED VIEW', 'VIEW')
  and referenced_owner like nvl(:object_owner, referenced_owner)
  and referenced_name like nvl(:object_name, referenced_name)
union
-- object references from dba_indexes
select /*+ MATERIALIZE */ to_char(sysdate, 'DD-MON-YYYY') date_evaluated
, table_owner || '.' || table_name || '(TABLE)' as object
, 'Referenced in' relationship
, owner || '.' || index_name || '(INDEX)' as referenced_object
, table_owner referenced_owner
, table_name referenced_name
, '(TABLE)' referenced_type
, owner owner
, index_name name
, '(INDEX)' type
from dba_indexes
where 1=1
  and table_owner like nvl(:object_owner, table_owner)
  and table_name like nvl(:object_name, table_name)
;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60396716

复制
相关文章
Oracle 数据表的管理
1、创建表的的表名规则 a、必须已字母开头 b、长度不能超过30 c、不能是Oracle的保留字 d、只能使用如下字符:A-Z、a-z、1-9、#,$等 2、Oracle基本数据类型 2.1 字符型数据 a、char        定长,最大2000字符 例:char(10)      '张三'前面四个字符存放张三,后面六个字符存放空格。 缺点:浪费空间 优点:查询速度比varchar块,非常快,如果数据字段,存储的是身份证之类的你可以知道长度的,最好使用char类型,提高查询效率 b、varchar2  
郑小超.
2018/01/26
8090
Hive 元数据表结构详解
元数据是基础,这篇文章值得一读。 本文介绍Hive元数据库中一些重要的表结构及用途,方便Impala、SparkSQL、Hive等组件访问元数据库的理解。 1、存储Hive版本的元数据表(VERSION) 该表比较简单,但很重要。 VER_IDSCHEMA_VERSIONVERSION_COMMENTID主键Hive版本版本说明11.1.0Set by MetaStore 如果该表出现问题,根本进入不了Hive-Cli。比如该表不存在,当启动Hive-Cli时候,就会报错”Table ‘hive.vers
大数据和云计算技术
2018/03/08
5.8K0
Kettle 7.1 连接HBase数据表
在Tools -> Hadoop Distribution 中选择 “HortonWorks HDP 2.5.x”。
kongxx
2018/10/11
2.1K0
Sqoop导入Oracle数据表到Hive
因为指定了-m 4,也就是4个map处理,-m > 1 必须有主键。因为这个表没有主键,所以需要需要设置-m 1
程裕强
2022/05/06
2.7K0
Oracle表连接
  内连接:查询满足条件的结果集,是相对于外连接来说的(条件的话由很多种可以等于、不等于、大于、小于等等)。
翎野君
2023/05/12
7270
Python连接Oracle
本案例的Python版本是:python 3.4.3 cx_Oracle #!/usr/bin/env python import time start = time.clock() import cx_Oracle tns = cx_Oracle.makedsn('127.0.0.1', '1534', 'dsn') db = cx_Oracle.connect('username', 'password', tns) def sqlSelect(sql, db): cur=db.cursor
程序猿的栖息地
2022/04/29
1.2K0
springboot连接oracle
首先引入GAV <dependency> <groupId>org.zenframework.z8.dependencies.commons</groupId> <artifactId>ojdbc6</artifactId> <version>2.0</version> </dependency> 然后修改application中url和驱动 datasource: driver-class-name: oracle.jdbc.OracleDriver url: jdbc:ora
阿超
2022/08/21
1.4K0
oracle连接plsqldev
一 F:\orcale\product\11.2.0\dbhome_1\NETWORK\ADMIN
全栈程序员站长
2022/08/10
1.2K0
oracle连接plsqldev
python 连接 ORACLE
参考连接:https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html#oracle-client-and-oracle-database-interoperability
大大刺猬
2020/06/19
1.4K0
mybatis连接oracle
原因:oracle jdbc并不能向mysql那样直接配置,原因是Oracle授权问题,Maven不提供oracle JDBC driver,需要手动配置下,这里直接去官网下载,将jar包手动导入idea中
微醺
2019/01/17
1.7K0
Thinkphp连接Oracle
'DB_TYPE' => 'oracle', // 数据库类型 'DB_HOST' => 'XXXXXXX', // 服务器地址 'DB_NAME' => 'XXXXX', // 这里注意是服务名!!!! 'DB_USER' => 'xxxxx', // 用户名 'DB_PWD' => 'xxxx', // 密码 'DB_PORT' => 1521, // 端口 'DB_PR
苦咖啡
2018/04/28
1.9K0
Sqoop导入Oracle数据表到HDFS
1、问题 [root@node1 sqoop-1.4.7]# bin/sqoop import --connect jdbc:oracle:thin:@192.168.1.100:1521:TPADC --username test --password test --table fund_info -m 1; Warning: /opt/sqoop-1.4.7/bin/../../hbase does not exist! HBase imports will fail. Please set $HBA
程裕强
2022/05/06
9030
[周末往期回顾]使用cx_Oracle连接Oracle
上节讲了如何安装cx_Oracle,这节讲述如何利用Python 模块cx_Oracle 连接Oracle数据库
bsbforever
2020/08/19
1.4K0
Hudi元数据表(Metadata table)解析
ApacheHudi元数据表可以显著提高查询的读/写性能。元数据表的主要目的是消除“列出文件”操作的要求。
从大数据到人工智能
2022/05/11
2.7K0
Oracle之scott用户数据表
3. 【常用表关系】在 scott下一共提出有四张表:部门表( dept)、雇员表( emp)、工资等级表(salgrade)、工资表(bonus)
兮动人
2021/06/11
7240
Oracle之scott用户数据表
python连接oracle配置
Oracle服务端:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
py3study
2020/01/06
1.4K0
oracle java连接配置
oracle客户端工具使用sqldeveloper,下载地址:http://www.oracle.com/technetwork/cn/developer-tools/sql-developer/downloads/index.html 这个工具比较大,貌似GFW的关系,下载特别慢。自行找盘里的资源吧。 sqldeveloper连接配置:
编程随笔
2019/09/11
1.6K0
oracle java连接配置
plsqldev连接远程oracle[通俗易懂]
F:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN
全栈程序员站长
2022/09/02
2.7K0
jdbc连接oracle语法
jdbc也有事物:connection.setAutoCommit(false) 默认是true自动提交
HUC思梦
2020/09/03
9160
Hive左连接_oracle左外连接
大家好,又见面了,我是你们的朋友全栈君。 CREATE EXTERNAL TABLE IF NOT EXISTS a( telno STRING, other STRING ) PARTITIONED BY(day String) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘|’;
全栈程序员站长
2022/10/02
1.3K0

相似问题

ORACLE -用数据表连接定义表

23

Redshift与元数据表连接并选择列

12

oracle中是否有存储用户定义类型的元数据表?

20

当我尝试使用Spring Datasource通过Spring Batch连接到Oracle数据库时,元数据表出现错误

10

Java DICOM元数据表

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文