• Oracle中快速查询和操作某个用户下的所有表数据信息


    一、禁止所有的外键约束

    在pl/sql developer下执行如下语句:
    SELECT 'ALTER TABLE ' || table_name || ' disable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';
    把查询出来的结果拷出来在pl/sql developer时执行。

    先看看user_constraints是什么

    user_constraints是表约束的视图,描述的是约束类型(constraint_type)是什么,属于哪些表(table_name),如果约束的类型为R(外键)的话,那么r_constraint_name字段存放的就是被引用主表中的主键约束名。

    先看看user_cons_columns是什么

    user_cons_columns是表约束字段的视图,说明表中的和约束相关的列参与了哪些约束。这些约束有主键约束,外键约束,索引约束.
      两者可以通过(owner,constraint_name,table_name)关联 

    select 
    a.owner 外键拥有者, 
    a.table_name 外键表, 
    substr(c.column_name,1,127) 外键列, 
    b.owner 主键拥有者, 
    b.table_name 主键表, 
    substr(d.column_name,1,127) 主键列 
    from 
    user_constraints a, 
    user_constraints b, 
    user_cons_columns c, 
    user_cons_columns d 
    where 
        a.r_constraint_name=b.constraint_name 
    and a.constraint_type='R' 
    and b.constraint_type='P' 
    and a.r_owner=b.owner 
    and a.constraint_name=c.constraint_name 
    and b.constraint_name=d.constraint_name 
    and a.owner=c.owner 
    and a.table_name=c.table_name 
    and b.owner=d.owner 
    and b.table_name=d.table_name

    用delete或truncate删除用户所有表的内容

    SELECT 'DELETE FROM '|| table_name || ';' FROM USER_TABLES
    ORDER BY TABLE_NAME;

    SELECT 'TRUNCATE TABLE '|| table_name || ';' FROM USER_TABLES
    ORDER BY TABLE_NAME;
    用第一步类似的方法操作。要注意的一点是,若表的数据有触发器相关联,只能用truncate语句,不过truncate语句不能回滚,所以时要注意

    三、把已经禁止的外键打开

    SELECT 'ALTER TABLE ' || table_name || ' enable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';

    查出来的表结果是执行语句:如下 

    1 TRUNCATE TABLE A;
    2 TRUNCATE TABLE ACCEPT_SN;
    3 TRUNCATE TABLE B;

  • 相关阅读:
    Using Flex swf to load html into frames(转)
    wan886网址导航 Bo9bo高清电影 两个图标 怎么都删不掉
    Flex的新插件BluePrint
    开源——需要分享共享的无私精神
    Flex相关的开发例子与资源收集(转)
    在FLEX中真正的隐藏一个组件,隐藏后不占据自身的位置. (转)
    显示属性里没有桌面选项卡解决办法
    FLEX如何读取XML文件.(转)
    ACTIONSCRIPT技巧,工具,API大收集(国外资源,转载)
    The Top 10 Things You Should Know About Flex (转)
  • 原文地址:https://www.cnblogs.com/Luouy/p/5318468.html
Copyright © 2020-2023  润新知