sql >> データベース >  >> RDS >> Mysql

FOREIGN KEYは、同じテーブルの列を参照します。値を挿入できません

    すべてのニーズに対応するには、この構造を採用する必要があります

    CREATE TABLE `menus` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `parent_id` int(11) unsigned DEFAULT NULL,
      `label` varchar(255) NOT NULL DEFAULT '',
      PRIMARY KEY (`id`),
      KEY `fk_parent_menu` (`parent_id`),
      CONSTRAINT `fk_parent_menu` FOREIGN KEY (`parent_id`) 
        REFERENCES `menus` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
    );
    

    SQLフィドルデモ

    デモでは、親ノードの挿入と削除を示しています

    すべての子のマジックドロップ部分は、ON DELETE CASCADEによって実行されます。



    1. ファイル内のX行を無視してSQLファイルをデータベースにインポートする方法は?

    2. MySQLの次/前のID(任意のソート順)

    3. MySQL C ++コネクタ:insert_idを取得します

    4. SQLServerでマスターデータベースを簡単に再構築する方法