jrullan

ForeignKeys_Example

May 25th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 1.82 KB | None | 0 0
  1. SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
  2. SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
  3. SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
  4.  
  5. CREATE SCHEMA IF NOT EXISTS `db` DEFAULT CHARACTER SET utf8 ;
  6. USE `db` ;
  7.  
  8. -- -----------------------------------------------------
  9. -- Table `db`.`role`
  10. -- -----------------------------------------------------
  11. CREATE TABLE IF NOT EXISTS `db`.`role` (
  12.   `id` INT NOT NULL AUTO_INCREMENT,
  13.   `name` VARCHAR(45) NULL,
  14.   PRIMARY KEY (`id`),
  15.   UNIQUE INDEX `name_UNIQUE` (`name` ASC))
  16. ENGINE = InnoDB;
  17.  
  18.  
  19. -- -----------------------------------------------------
  20. -- Table `db`.`parent`
  21. -- -----------------------------------------------------
  22. CREATE TABLE IF NOT EXISTS `db`.`parent` (
  23.   `id` INT NOT NULL AUTO_INCREMENT,
  24.   `name` VARCHAR(45) NULL,
  25.   `role_id` INT NOT NULL,
  26.   PRIMARY KEY (`id`),
  27.   UNIQUE INDEX `name_UNIQUE` (`name` ASC),
  28.   INDEX `fk_parent_role1_idx` (`role_id` ASC),
  29.   CONSTRAINT `fk_parent_role1`
  30.     FOREIGN KEY (`role_id`)
  31.     REFERENCES `db`.`role` (`id`)
  32.     ON DELETE NO ACTION
  33.     ON UPDATE NO ACTION)
  34. ENGINE = InnoDB;
  35.  
  36.  
  37. -- -----------------------------------------------------
  38. -- Table `db`.`child`
  39. -- -----------------------------------------------------
  40. CREATE TABLE IF NOT EXISTS `db`.`child` (
  41.   `id` INT NOT NULL AUTO_INCREMENT,
  42.   `name` VARCHAR(45) NULL,
  43.   `parent_id` INT NOT NULL,
  44.   PRIMARY KEY (`id`),
  45.   UNIQUE INDEX `name_UNIQUE` (`name` ASC),
  46.   INDEX `fk_child_parent1_idx` (`parent_id` ASC),
  47.   CONSTRAINT `fk_child_parent1`
  48.     FOREIGN KEY (`parent_id`)
  49.     REFERENCES `db`.`parent` (`id`)
  50.     ON DELETE NO ACTION
  51.     ON UPDATE NO ACTION)
  52. ENGINE = InnoDB;
  53.  
  54.  
  55. SET SQL_MODE=@OLD_SQL_MODE;
  56. SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
  57. SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
Advertisement
Add Comment
Please, Sign In to add comment