Guest User

Untitled

a guest
Sep 28th, 2012
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 8.40 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. DROP SCHEMA IF EXISTS `mydb` ;
  6. CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
  7. USE `mydb` ;
  8.  
  9. -- -----------------------------------------------------
  10. -- Table `mydb`.`video`
  11. -- -----------------------------------------------------
  12. CREATE  TABLE IF NOT EXISTS `mydb`.`video` (
  13.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  14.   `title` VARCHAR(255) NOT NULL ,
  15.   `description` TEXT NULL ,
  16.   `featured` TINYINT(1) NOT NULL DEFAULT FALSE ,
  17.   `private` TINYINT(1) NOT NULL DEFAULT FALSE ,
  18.   `password` VARCHAR(25) NOT NULL DEFAULT '' ,
  19.   PRIMARY KEY (`id`) )
  20. ENGINE = InnoDB;
  21.  
  22.  
  23. -- -----------------------------------------------------
  24. -- Table `mydb`.`tag`
  25. -- -----------------------------------------------------
  26. CREATE  TABLE IF NOT EXISTS `mydb`.`tag` (
  27.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  28.   `name` VARCHAR(100) NOT NULL ,
  29.   PRIMARY KEY (`id`) )
  30. ENGINE = InnoDB;
  31.  
  32.  
  33. -- -----------------------------------------------------
  34. -- Table `mydb`.`category`
  35. -- -----------------------------------------------------
  36. CREATE  TABLE IF NOT EXISTS `mydb`.`category` (
  37.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  38.   `name` VARCHAR(100) NOT NULL ,
  39.   PRIMARY KEY (`id`) )
  40. ENGINE = InnoDB;
  41.  
  42.  
  43. -- -----------------------------------------------------
  44. -- Table `mydb`.`subcategory`
  45. -- -----------------------------------------------------
  46. CREATE  TABLE IF NOT EXISTS `mydb`.`subcategory` (
  47.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  48.   `category_id` INT UNSIGNED NOT NULL ,
  49.   `name` VARCHAR(100) NOT NULL ,
  50.   PRIMARY KEY (`id`, `category_id`) ,
  51.   INDEX `fk_category_id_idx` (`category_id` ASC) ,
  52.   CONSTRAINT `fk_subcat_category_id`
  53.     FOREIGN KEY (`category_id` )
  54.     REFERENCES `mydb`.`category` (`id` )
  55.     ON DELETE CASCADE
  56.     ON UPDATE CASCADE)
  57. ENGINE = InnoDB;
  58.  
  59.  
  60. -- -----------------------------------------------------
  61. -- Table `mydb`.`organization`
  62. -- -----------------------------------------------------
  63. CREATE  TABLE IF NOT EXISTS `mydb`.`organization` (
  64.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  65.   `name` VARCHAR(255) NOT NULL ,
  66.   `logo_filename` VARCHAR(60) NULL ,
  67.   PRIMARY KEY (`id`) )
  68. ENGINE = InnoDB;
  69.  
  70.  
  71. -- -----------------------------------------------------
  72. -- Table `mydb`.`contact`
  73. -- -----------------------------------------------------
  74. CREATE  TABLE IF NOT EXISTS `mydb`.`contact` (
  75.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  76.   `first_name` VARCHAR(150) NOT NULL ,
  77.   `last_name` VARCHAR(150) NOT NULL ,
  78.   `email` VARCHAR(255) NOT NULL ,
  79.   `phone` VARCHAR(45) NOT NULL ,
  80.   `url` VARCHAR(255) NOT NULL ,
  81.   `organization_id` INT UNSIGNED NOT NULL ,
  82.   PRIMARY KEY (`id`) ,
  83.   INDEX `fk_organization_id_idx` (`organization_id` ASC) ,
  84.   CONSTRAINT `fk_organization_id`
  85.     FOREIGN KEY (`organization_id` )
  86.     REFERENCES `mydb`.`organization` (`id` )
  87.     ON DELETE NO ACTION
  88.     ON UPDATE CASCADE)
  89. ENGINE = InnoDB;
  90.  
  91.  
  92. -- -----------------------------------------------------
  93. -- Table `mydb`.`video_part`
  94. -- -----------------------------------------------------
  95. CREATE  TABLE IF NOT EXISTS `mydb`.`video_part` (
  96.   `video_id` INT UNSIGNED NOT NULL ,
  97.   `part` TINYINT UNSIGNED NOT NULL DEFAULT 1 ,
  98.   `title` VARCHAR(100) NOT NULL DEFAULT '' ,
  99.   `description` TEXT NULL ,
  100.   `start_date` TIMESTAMP NULL ,
  101.   `end_date` TIMESTAMP NULL ,
  102.   `production_date` DATE NULL ,
  103.   `post_date` TIMESTAMP NULL ,
  104.   `duration` INT UNSIGNED NULL ,
  105.   `approved` TINYINT(1) NOT NULL DEFAULT FALSE ,
  106.   `can_download` TINYINT(1) NOT NULL DEFAULT TRUE ,
  107.   `encoding_organization` INT UNSIGNED NOT NULL ,
  108.   `production_organization` INT UNSIGNED NOT NULL ,
  109.   `contact_id` INT UNSIGNED NOT NULL ,
  110.   PRIMARY KEY (`video_id`, `part`) ,
  111.   INDEX `fk_encoding_organization_idx` (`encoding_organization` ASC) ,
  112.   INDEX `fk_production_organization_idx` (`production_organization` ASC) ,
  113.   INDEX `fk_contact_idx` (`contact_id` ASC) ,
  114.   CONSTRAINT `fk_video`
  115.     FOREIGN KEY (`video_id` )
  116.     REFERENCES `mydb`.`video` (`id` )
  117.     ON DELETE CASCADE
  118.     ON UPDATE CASCADE,
  119.   CONSTRAINT `fk_encoding_organization`
  120.     FOREIGN KEY (`encoding_organization` )
  121.     REFERENCES `mydb`.`organization` (`id` )
  122.     ON DELETE NO ACTION
  123.     ON UPDATE CASCADE,
  124.   CONSTRAINT `fk_production_organization`
  125.     FOREIGN KEY (`production_organization` )
  126.     REFERENCES `mydb`.`organization` (`id` )
  127.     ON DELETE NO ACTION
  128.     ON UPDATE CASCADE,
  129.   CONSTRAINT `fk_contact`
  130.     FOREIGN KEY (`contact_id` )
  131.     REFERENCES `mydb`.`contact` (`id` )
  132.     ON DELETE NO ACTION
  133.     ON UPDATE CASCADE)
  134. ENGINE = InnoDB;
  135.  
  136.  
  137. -- -----------------------------------------------------
  138. -- Table `mydb`.`video_material`
  139. -- -----------------------------------------------------
  140. CREATE  TABLE IF NOT EXISTS `mydb`.`video_material` (
  141.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  142.   `video_id` INT UNSIGNED NOT NULL ,
  143.   `part` TINYINT UNSIGNED NOT NULL ,
  144.   `title` VARCHAR(255) NOT NULL ,
  145.   `filename` VARCHAR(60) NOT NULL ,
  146.   PRIMARY KEY (`id`, `video_id`, `part`) ,
  147.   INDEX `fk_video_id_part_idx` (`video_id` ASC, `part` ASC) ,
  148.   CONSTRAINT `fk_material_video_id_part`
  149.     FOREIGN KEY (`part` , `video_id` )
  150.     REFERENCES `mydb`.`video_part` (`part` , `video_id` )
  151.     ON DELETE CASCADE
  152.     ON UPDATE CASCADE)
  153. ENGINE = InnoDB;
  154.  
  155.  
  156. -- -----------------------------------------------------
  157. -- Table `mydb`.`video_link`
  158. -- -----------------------------------------------------
  159. CREATE  TABLE IF NOT EXISTS `mydb`.`video_link` (
  160.   `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
  161.   `video_id` INT UNSIGNED NOT NULL ,
  162.   `part` TINYINT UNSIGNED NOT NULL ,
  163.   `title` VARCHAR(255) NOT NULL ,
  164.   `url` VARCHAR(255) NOT NULL ,
  165.   PRIMARY KEY (`id`, `video_id`, `part`) ,
  166.   INDEX `fk_video_id_part_idx` (`part` ASC, `video_id` ASC) ,
  167.   CONSTRAINT `fk_link_video_id_part`
  168.     FOREIGN KEY (`part` , `video_id` )
  169.     REFERENCES `mydb`.`video_part` (`part` , `video_id` )
  170.     ON DELETE CASCADE
  171.     ON UPDATE CASCADE)
  172. ENGINE = InnoDB;
  173.  
  174.  
  175. -- -----------------------------------------------------
  176. -- Table `mydb`.`video_tag`
  177. -- -----------------------------------------------------
  178. CREATE  TABLE IF NOT EXISTS `mydb`.`video_tag` (
  179.   `video_id` INT UNSIGNED NOT NULL ,
  180.   `tag_id` INT UNSIGNED NOT NULL ,
  181.   PRIMARY KEY (`video_id`, `tag_id`) ,
  182.   INDEX `fk_tag_id_idx` (`tag_id` ASC) ,
  183.   INDEX `fk_video_id_idx` (`video_id` ASC) ,
  184.   CONSTRAINT `fk_video_id`
  185.     FOREIGN KEY (`video_id` )
  186.     REFERENCES `mydb`.`video` (`id` )
  187.     ON DELETE CASCADE
  188.     ON UPDATE CASCADE,
  189.   CONSTRAINT `fk_tag_id`
  190.     FOREIGN KEY (`tag_id` )
  191.     REFERENCES `mydb`.`tag` (`id` )
  192.     ON DELETE CASCADE
  193.     ON UPDATE CASCADE)
  194. ENGINE = InnoDB;
  195.  
  196.  
  197. -- -----------------------------------------------------
  198. -- Table `mydb`.`video_category`
  199. -- -----------------------------------------------------
  200. CREATE  TABLE IF NOT EXISTS `mydb`.`video_category` (
  201.   `video_id` INT UNSIGNED NOT NULL ,
  202.   `category_id` INT UNSIGNED NOT NULL ,
  203.   PRIMARY KEY (`video_id`, `category_id`) ,
  204.   INDEX `fk_video_id_idx` (`video_id` ASC) ,
  205.   INDEX `fk_category_id_idx` (`category_id` ASC) ,
  206.   CONSTRAINT `fk_video_category_id`
  207.     FOREIGN KEY (`category_id` )
  208.     REFERENCES `mydb`.`category` (`id` )
  209.     ON DELETE CASCADE
  210.     ON UPDATE CASCADE,
  211.   CONSTRAINT `fk_video_video_id`
  212.     FOREIGN KEY (`video_id` )
  213.     REFERENCES `mydb`.`video` (`id` )
  214.     ON DELETE CASCADE
  215.     ON UPDATE CASCADE)
  216. ENGINE = InnoDB;
  217.  
  218.  
  219. -- -----------------------------------------------------
  220. -- Table `mydb`.`video_presenter`
  221. -- -----------------------------------------------------
  222. CREATE  TABLE IF NOT EXISTS `mydb`.`video_presenter` (
  223.   `video_id` INT UNSIGNED NOT NULL ,
  224.   `contact_id` INT UNSIGNED NOT NULL ,
  225.   PRIMARY KEY (`video_id`, `contact_id`) ,
  226.   INDEX `fk_contact_id_idx` (`contact_id` ASC) ,
  227.   INDEX `fk_video_id_idx` (`video_id` ASC) ,
  228.   CONSTRAINT `fk_pres_video_id`
  229.     FOREIGN KEY (`video_id` )
  230.     REFERENCES `mydb`.`video` (`id` )
  231.     ON DELETE CASCADE
  232.     ON UPDATE CASCADE,
  233.   CONSTRAINT `fk_pres_contact_id`
  234.     FOREIGN KEY (`contact_id` )
  235.     REFERENCES `mydb`.`contact` (`id` )
  236.     ON DELETE CASCADE
  237.     ON UPDATE CASCADE)
  238. ENGINE = InnoDB;
  239.  
  240.  
  241.  
  242. SET SQL_MODE=@OLD_SQL_MODE;
  243. SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
  244. SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
Advertisement
Add Comment
Please, Sign In to add comment