zoukankan      html  css  js  c++  java
  • 数据库约束查询

    ------数据库中根据约束,查询对应表
    --主键约束
    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');
  • 相关阅读:
    23种设计模式之过滤模式
    23种设计模式之建造者模式
    23种设计模式之桥接模式
    23种设计模式之策略模式
    Redis缓存相关问题
    docker命令大全
    过滤器filter和springmvc拦截器的区别及实现
    23种设计模式之装饰器模式
    Model ModelMap ModelView三者的区别你造吗
    解决并发问题的一般思路及使用redis实现秒杀
  • 原文地址:https://www.cnblogs.com/chenjx/p/7107276.html
Copyright © 2011-2022 走看看