[前][次][番号順一覧][スレッド一覧]

mysql:14160

From: HIRATSUKA Sadao <HIRATSUKA Sadao <hiratsuka.sadao@xxxxxxxxxx>>
Date: Wed, 08 Aug 2007 18:11:09 +0900
Subject: [mysql 14160] Re: 制約の確認について

平塚です。

> oracleでいう
> dba_cons_columnsとかdba_constraintsみたいな感じで各種制約を後から確認するこ
> とはできるものなのでしょうか。

SHOW CREATE TABLE文で確認できます。

root:scott> show create table scott.emp\G
*************************** 1. row ***************************
       Table: emp
Create Table: CREATE TABLE `emp` (
  `empno` decimal(4,0) NOT NULL,
  `ename` varchar(10) default NULL,
  `job` varchar(9) default NULL,
  `mgr` decimal(4,0) default NULL,
  `hiredate` date default NULL,
  `sal` decimal(7,2) default NULL,
  `comm` decimal(7,2) default NULL,
  `deptno` decimal(2,0) default NULL,
  PRIMARY KEY  (`empno`),
  KEY `deptno` (`deptno`),
  CONSTRAINT `emp_ibfk_1` FOREIGN KEY (`deptno`) REFERENCES `dept` (`deptno`)
) ENGINE=InnoDB DEFAULT CHARSET=cp932


5.0以降ならinformation_schemaデータベースで確認できます。
Oracleのdba_constraintsっぽいのはこちらですね。

root:information_schema> select * from TABLE_CONSTRAINTS
  where TABLE_NAME = 'emp'\G
*************************** 1. row ***************************
CONSTRAINT_CATALOG: NULL
 CONSTRAINT_SCHEMA: scott
   CONSTRAINT_NAME: PRIMARY
      TABLE_SCHEMA: scott
        TABLE_NAME: emp
   CONSTRAINT_TYPE: PRIMARY KEY
*************************** 2. row ***************************
CONSTRAINT_CATALOG: NULL
 CONSTRAINT_SCHEMA: scott
   CONSTRAINT_NAME: emp_ibfk_1
      TABLE_SCHEMA: scott
        TABLE_NAME: emp
   CONSTRAINT_TYPE: FOREIGN KEY

外部キーemp_ibfk_1の定義はKEY_COLUMN_USAGEから取ります。

root:information_schema> select * from KEY_COLUMN_USAGE
  where CONSTRAINT_NAME = 'emp_ibfk_1'\G
*************************** 1. row ***************************
           CONSTRAINT_CATALOG: NULL
            CONSTRAINT_SCHEMA: scott
              CONSTRAINT_NAME: emp_ibfk_1
                TABLE_CATALOG: NULL
                 TABLE_SCHEMA: scott
                   TABLE_NAME: emp
                  COLUMN_NAME: deptno
             ORDINAL_POSITION: 1
POSITION_IN_UNIQUE_CONSTRAINT: 1
      REFERENCED_TABLE_SCHEMA: scott
        REFERENCED_TABLE_NAME: dept
       REFERENCED_COLUMN_NAME: deptno


よろしくお願いします。

-- 
平塚貞夫 hiratsuka.sadao@xxxxxxxxxx


[前][次][番号順一覧][スレッド一覧]

     14159 2007-08-08 17:43 [<myousan@xxxxxxxxxx>] 制約の確認について                      
->   14160 2007-08-08 18:11 ┗[HIRATSUKA Sadao <hir]                                       
     14161 2007-08-08 18:42  ┗["Myoutsuzono, Hirosh]