· 8 years ago · Feb 15, 2018, 08:40 PM
1-- MySQL Workbench Forward Engineering
2
3SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
4SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
5SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
6
7-- -----------------------------------------------------
8-- Schema blog_db
9-- -----------------------------------------------------
10
11-- -----------------------------------------------------
12-- Schema blog_db
13-- -----------------------------------------------------
14CREATE SCHEMA IF NOT EXISTS `blog_db` DEFAULT CHARACTER SET utf8 ;
15USE `blog_db` ;
16
17-- -----------------------------------------------------
18-- Table `blog_db`.`users`
19-- -----------------------------------------------------
20CREATE TABLE IF NOT EXISTS `blog_db`.`users` (
21 `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
22 `username` VARCHAR(45) NOT NULL,
23 `email` VARCHAR(255) NOT NULL,
24 `password` VARCHAR(255) NOT NULL,
25 `created` DATETIME NULL,
26 `modified` DATETIME NULL,
27 PRIMARY KEY (`id`))
28ENGINE = InnoDB;
29
30
31-- -----------------------------------------------------
32-- Table `blog_db`.`articles`
33-- -----------------------------------------------------
34CREATE TABLE IF NOT EXISTS `blog_db`.`articles` (
35 `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
36 `user_id` INT(11) UNSIGNED NOT NULL,
37 `title` VARCHAR(255) NOT NULL,
38 `body` TEXT NULL,
39 `published` TINYINT(1) NULL DEFAULT 0,
40 `created` DATETIME NULL,
41 `modified` DATETIME NULL,
42 PRIMARY KEY (`id`),
43 INDEX `user_key_idx` (`user_id` ASC),
44 CONSTRAINT `user_key`
45 FOREIGN KEY (`user_id`)
46 REFERENCES `blog_db`.`users` (`id`)
47 ON DELETE CASCADE
48 ON UPDATE NO ACTION)
49ENGINE = InnoDB;
50
51
52-- -----------------------------------------------------
53-- Table `blog_db`.`tags`
54-- -----------------------------------------------------
55CREATE TABLE IF NOT EXISTS `blog_db`.`tags` (
56 `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
57 `title` VARCHAR(255) NOT NULL,
58 PRIMARY KEY (`id`))
59ENGINE = InnoDB;
60
61
62-- -----------------------------------------------------
63-- Table `blog_db`.`articles_tags`
64-- -----------------------------------------------------
65CREATE TABLE IF NOT EXISTS `blog_db`.`articles_tags` (
66 `article_id` INT(11) UNSIGNED NOT NULL,
67 `tag_id` INT(11) UNSIGNED NOT NULL,
68 INDEX `tag_key_idx` (`tag_id` ASC),
69 INDEX `article_key_idx` (`article_id` ASC),
70 CONSTRAINT `tag_key`
71 FOREIGN KEY (`tag_id`)
72 REFERENCES `blog_db`.`tags` (`id`)
73 ON DELETE NO ACTION
74 ON UPDATE NO ACTION,
75 CONSTRAINT `article_key`
76 FOREIGN KEY (`article_id`)
77 REFERENCES `blog_db`.`articles` (`id`)
78 ON DELETE NO ACTION
79 ON UPDATE NO ACTION)
80ENGINE = InnoDB;
81
82
83SET SQL_MODE=@OLD_SQL_MODE;
84SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
85SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;