你既然知道怎么取得 constraints_name那就可以通过 user_cons_columns 或者 dba_cons_columns 或者 all_cons_columns 视图获得相关的列名一般用user_constraints 和 user_cons_columns, 你总不能让系统以DBA的角色登录吧,这个太危险了

解决方案 »

  1.   

    列约束可从表定义看出,即describe;表约束即主键和外键,可从dba_constraints和dba_cons_columns 查。
       select * from user_constraints
       where table_name='BOOK_EXAMPLE';
       select owner,CONSTRAINT_NAME,TABLE_NAME 
        from user_constraints 
        where constraint_type='R'
        order by table_name;
      

  2.   

    SELECT C.COLUMN_NAME
      FROM user_CONSTRAINTS T, user_CONS_COLUMNS C
     WHERE T.CONSTRAINT_NAME = C.CONSTRAINT_NAME
       AND T.OWNER = 'EQSP'
       AND T.TABLE_NAME = 'SP_PLAN_SUB'
       AND T.CONSTRAINT_TYPE = 'P';
      

  3.   


    问题解决了
    我对oracle不熟悉
    多谢三位的指点,多谢了