用这个命令显示TABLE_NAME
SELECT A.TABLE_NAME,A.CONSTRAINT_NAME FROM USER_CONSTRAINTS A
 WHERE A.R_CONSTRAINT_NAME = (
 SELECT B.CONSTRAINT_NAME FROM USER_CONSTRAINTS B
 WHERE B.TABLE_NAME=UPPER(table_name) AND B.CONSTRAINT_TYPE='P');

解决方案 »

  1.   

    LGQDUCKY(飘)你好,你写的语句我不明白,我的问题是这样的:
    create table dw
    (  pkid char(30) ,
       dwmc(char(30)
       primary key (pkid)
     )
     
    create table  dwbzj
    (je number,
      dw char(30)
      foreign key (dw) references dw(pkid)
    )
    我用什么命令能看到我建的表的约束名称、约束类型。
    我想知道主键名称,外键名称、外键的引用方案、引用表、表列、引用列的情况。
    用什么命令可以知道表有无约束条件。
      

  2.   

    SELECT table_name, constraint_name, constraint_type 
      FROM user_constraints
      WHERE table_name='DW' OR table_name='DWBZJ'constraint_type
    P表示Primiary Key
      

  3.   

    constraint_type列:
    C 表明约束属于CHECK类型,在这种情况下,RDBMS对非空值进行检查
    P 表明约束与主码(primary key)结合
    U 表明约束与唯一性约束结合
    R 表明约束与外码(foreign key)结合btw:查询条件的表名一定要大写