主键约束
SELECT
  USER_CONS_COLUMNS.CONSTRAINT_NAME AS 约束名,
  USER_CONS_COLUMNS.TABLE_NAME AS 表名,
  USER_CONS_COLUMNS.COLUMN_NAME AS 列名,
  USER_CONS_COLUMNS.POSITION AS 位置
FROM
  USER_CONSTRAINTS
    JOIN USER_CONS_COLUMNS
    ON (USER_CONSTRAINTS.CONSTRAINT_NAME
= USER_CONS_COLUMNS.CONSTRAINT_NAME)
WHERE
  CONSTRAINT_TYPE = 'P';

外键约束
SELECT
  USER_CONS_COLUMNS.CONSTRAINT_NAME AS 约束名,
  USER_CONS_COLUMNS.TABLE_NAME AS 子表名,
  USER_CONS_COLUMNS.COLUMN_NAME AS 子表列名,
  USER_CONS_COLUMNS.POSITION AS 位置,
  USER_INDEXES.TABLE_NAME AS 主表名,
  USER_IND_COLUMNS.COLUMN_NAME AS 主表列名
FROM
  USER_CONSTRAINTS
    JOIN USER_CONS_COLUMNS
    ON (USER_CONSTRAINTS.CONSTRAINT_NAME
        = USER_CONS_COLUMNS.CONSTRAINT_NAME)
    JOIN USER_INDEXES
    ON (USER_CONSTRAINTS.R_CONSTRAINT_NAME
        = USER_INDEXES.INDEX_NAME)
    JOIN USER_IND_COLUMNS
    ON (USER_INDEXES.INDEX_NAME = USER_IND_COLUMNS.INDEX_NAME)
WHERE
  CONSTRAINT_TYPE = 'R';

其他约束
SELECT
  USER_CONS_COLUMNS.CONSTRAINT_NAME AS 约束名,
  USER_CONS_COLUMNS.TABLE_NAME AS 表名,
  USER_CONS_COLUMNS.COLUMN_NAME AS 列名,
  USER_CONS_COLUMNS.POSITION AS 位置,
  CONSTRAINT_TYPE,
  SEARCH_CONDITION
FROM
  USER_CONSTRAINTS
    JOIN USER_CONS_COLUMNS
    ON (USER_CONSTRAINTS.CONSTRAINT_NAME
        = USER_CONS_COLUMNS.CONSTRAINT_NAME)
WHERE
  CONSTRAINT_TYPE IN ('C', 'V', 'O');

oracle 查询所有约束的更多相关文章

  1. Oracle查询速度慢的原因总结

    Oracle查询速度慢的原因总结 查询速度慢的原因很多,常见如下几种:1,没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2,I/O吞吐量小,形成了瓶颈效应.3,没有创建计算列导致 ...

  2. oracle查询某张表的外键,并用 truncate 命令有外键的表中的数据

    注:本文来源于<oracle查询某张表的外键(最终解决办法)> 一:几个查询表外键的脚本 select b.table_name, b.column_name from user_cons ...

  3. oracle查询所有用户表的表名、主键名称、索引、外键等

    1.查找表的所有索引(包括索引名,类型,构成列): select t.*,i.index_type from user_ind_columns t,user_indexes i where t.ind ...

  4. oracle查询语句大全 oracle 基本命令大全

    oracle查询语句大全 oracle 基本命令大全 来源于:http://download.csdn.net/download/jia584643753/5875619 1.create user ...

  5. Oracle 数据完整性与约束机制

    为了维护数据库数据的完整性,在创建表时需要定义一些约束,Oracle中的约束类型包括:非空约束.主键约束.唯一约束.外键约束等.在对约束操作前,我们可以通过表名查询它具有的约束信息. 表约束 SELE ...

  6. Oracle查询用户所有表

    https://blog.csdn.net/wssiqi/article/details/44617197 Oracle查询用户所有表   下面为您介绍的语句用于实现Oracle查询用户所有表,如果您 ...

  7. Oracle 查询出来的数据取第一条

    Oracle 查询出来的数据取第一条 --------------------------------------------------------------------------- 转载自:h ...

  8. Oracle查询和问题简记

    现在做两个版本的系统,一个用的数据库是Access,另一个就是Oracle了.每个数据库支持的的查询SQL语句都有所区别,这里主要针对Access和Oracle做 记录. 首先贴出遇到问题最多的一条语 ...

  9. 45 个非常有用的 Oracle 查询语句

    ​ 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快 ...

随机推荐

  1. java面向对象编程--Josephu问题(丢手帕问题)

    Josephu问题为:设编号为1,2,...n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推 ...

  2. [转载] java多线程总结(三)

    转载自: http://www.cnblogs.com/lwbqqyumidi/p/3821389.html 作者:Windstep 本文主要接着前面多线程的两篇文章总结Java多线程中的线程安全问题 ...

  3. 通过ajax提交表单上传文件

    //这是看的大神的.//原地址:https://www.cnblogs.com/kissdodog/archive/2012/12/15/2819025.html $("#sub" ...

  4. python笔记2——关于列表的使用

      一.列表的一些基本用法 names=["XiaoNaiyou", "XiaoNan", "WeiZhen", "WuCheng ...

  5. 两种语言实现设计模式(C++和Java)(一:工厂模式)

    本篇开始记录实现设计模式在工作中的两种常见语言上的实现. 本篇介绍最简单的工厂模式. 工厂模式有一种非常形象的描述,建立对象的类就如一个工厂,而需要被建立的对象就是一个个产品:在工厂中加工产品,使用产 ...

  6. Python中使用多进程来实现并行处理的方法小结

    进程和线程是计算机软件领域里很重要的概念,进程和线程有区别,也有着密切的联系,先来辨析一下这两个概念: 1.定义 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和 ...

  7. android 事件绑定

    layout布局设计了页面,如何绑定事件,与用户进行交互需要在Activity中进行处理. 下面的layout,有两个按钮. <LinearLayout android:layout_width ...

  8. vue—data中变量和字符串拼接

    #变量和字符串的拼接# 写项目中,遇到了这样的一个问题:怎样在一个div里面显示两个data中的数据?我的问题描述清楚了吗?... 看图吧:   这是用户最初的需求~  这是用户后来的需求,嗯……就是 ...

  9. 设计简单的VB程序

    1.模拟对话程序 [程序源码] Option Explicit Private Sub Command1_Click() Text2.Text = "" Text1.Text = ...

  10. Linux 下安装nodejs

    linux 版本 uname -a Linux -29deepin-generic # SMP Fri Jul :: UTC x86_64 GNU/Linux Nodejs 版本:node-v10.1 ...