Преглед на файлове

Add database init script

Peter Oertel преди 1 година
родител
ревизия
dd54c2e740
променени са 1 файла, в които са добавени 88 реда и са изтрити 0 реда
  1. 88 0
      init.sql

+ 88 - 0
init.sql

@@ -0,0 +1,88 @@
+-- MySQL Workbench Forward Engineering
+
+SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
+SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
+SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
+
+-- -----------------------------------------------------
+-- Schema mydb
+-- -----------------------------------------------------
+-- -----------------------------------------------------
+-- Schema topperstasks
+-- -----------------------------------------------------
+
+-- -----------------------------------------------------
+-- Schema topperstasks
+-- -----------------------------------------------------
+CREATE SCHEMA IF NOT EXISTS `topperstasks` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci ;
+USE `topperstasks` ;
+
+-- -----------------------------------------------------
+-- Table `topperstasks`.`users`
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS `topperstasks`.`users` (
+  `id` INT NOT NULL AUTO_INCREMENT,
+  `username` VARCHAR(64) NOT NULL,
+  `passhash` VARCHAR(60) CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci' NULL DEFAULT NULL,
+  `is_admin` TINYINT(1) NULL DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE INDEX `users_unique_1` (`username` ASC) VISIBLE)
+ENGINE = InnoDB
+AUTO_INCREMENT = 4
+DEFAULT CHARACTER SET = utf8mb4
+COLLATE = utf8mb4_0900_ai_ci;
+
+
+-- -----------------------------------------------------
+-- Table `topperstasks`.`tasks`
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS `topperstasks`.`tasks` (
+  `tasktext` TEXT NOT NULL,
+  `id` INT NOT NULL AUTO_INCREMENT,
+  `created_datetime` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
+  `due` DATETIME NULL DEFAULT NULL,
+  `deleted` TINYINT(1) NULL DEFAULT '0',
+  `completed` TINYINT(1) NULL DEFAULT '0',
+  `created_by` INT NULL DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  INDEX `tasks_users_FK` (`created_by` ASC) VISIBLE,
+  CONSTRAINT `tasks_users_FK`
+    FOREIGN KEY (`created_by`)
+    REFERENCES `topperstasks`.`users` (`id`)
+    ON DELETE SET NULL
+    ON UPDATE CASCADE)
+ENGINE = InnoDB
+AUTO_INCREMENT = 4
+DEFAULT CHARACTER SET = utf8mb4
+COLLATE = utf8mb4_0900_ai_ci;
+
+
+-- -----------------------------------------------------
+-- Table `topperstasks`.`task_assignments`
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS `topperstasks`.`task_assignments` (
+  `id` INT NOT NULL AUTO_INCREMENT,
+  `user_id` INT NOT NULL,
+  `task_id` INT NOT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE INDEX `task_assignments_user_id_IDX` USING BTREE (`user_id`, `task_id`) VISIBLE,
+  INDEX `task_assignments_tasks_FK` (`task_id` ASC) VISIBLE,
+  CONSTRAINT `task_assignments_tasks_FK`
+    FOREIGN KEY (`task_id`)
+    REFERENCES `topperstasks`.`tasks` (`id`)
+    ON DELETE CASCADE
+    ON UPDATE CASCADE,
+  CONSTRAINT `task_assignments_users_FK`
+    FOREIGN KEY (`user_id`)
+    REFERENCES `topperstasks`.`users` (`id`)
+    ON DELETE CASCADE
+    ON UPDATE CASCADE)
+ENGINE = InnoDB
+AUTO_INCREMENT = 9
+DEFAULT CHARACTER SET = utf8mb4
+COLLATE = utf8mb4_0900_ai_ci;
+
+
+SET SQL_MODE=@OLD_SQL_MODE;
+SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
+SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;