2012-01-03 29 views
0

私はハイジを使用していると私は、この表があります。Mysqlの自己関係に自己を作る方法は?

表カテゴリー:

  • ID
  • タイトルフィールドPARENT_IDは、IDの参照である

  • PARENT_IDを。このようにして、カテゴリとサブカテゴリの無制限階層を行うことができます。どのように私はこの関係をmysql構文で作成するのですか?

  • +0

    まず第一に、INNODBを使用して、テーブルですか? –

    +0

    はい - default_storage_engine:INNODB –

    答えて

    1

    あなたが外部キー制約を作成してください、あなたはこのような何かをする必要があるかを意味する場合:

    CREATE TABLE `EXAMPLE` (
        `ID` int(11) NOT NULL, 
        `TITLE` varchar(255) NOT NULL, 
        `PARENT_ID` int(11) DEFAULT NULL, 
        PRIMARY KEY (`ID`), 
        KEY `PARENT_ID` (`PARENT_ID`), 
        CONSTRAINT `PARENT` FOREIGN KEY (`PARENT_ID`) REFERENCES `EXAMPLE` (`ID`) 
    ); 
    
    +0

    いいえ、それはFOREIGN KEY関係ではありません。私はこの表の自己への関係船をする必要があります。 parent_idはid –

    +0

    を参照しています。例として提供したDDLを見れば、そのとおりです。自己参照の外部キー制約が作成されます。 – Atonewell

    関連する問題